đồ án công nghệ thông tin Ứng dụng công nghệ phần mềm trong bài toán hệ chuyên gia.Giải quyết các bài toán hệ chuyên gia dựa trên các quy trình công nghệ phần mềm.

95 330 0
đồ án công nghệ thông tin Ứng dụng công nghệ phần mềm trong bài toán hệ chuyên gia.Giải quyết các bài toán hệ chuyên gia dựa trên các quy trình công nghệ phần mềm.

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

 ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA LỜI CẢM ƠN Tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo hướng dẫn, Thạc sĩ THẠC BÌNH CƯỜNG, mơn Cơng nghệ phần mềm - khoa Công nghệ thông tin, trường Đại học Bách Khoa Hà Nội hướng dẫn chu đáo nhiệt tình, lời góp ý sâu sắc nhiều giá trị, với tài liệu hữu ích, giúp tơi hồn thành đồ án thời gian quy định Đồng thời xin gửi lời cảm ơn chân thành tới thầy cô giáo môn Công nghệ phần mềm tạo điều kiện giúp đỡ em hoàn thành đồ án Cuối xin bày tỏ lời cảm ơn đến người thân, bạn bè động viên giúp đỡ tơi q trình thực đồ án Hà nội, tháng 05/2004 Sinh viên thực Nguyễn Trọng Đơng NGUYỄN TRỌNG ĐƠNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG I: GIỚI THIỆU CHUNG VỀ CÔNG NGHỆ PHẦN MỀM VÀ HỆ CHUYÊN GIA 1.1 Công nghệ phần mềm 1.1.1 Định nghĩa công nghệ phần mềm 1.1.2 Vòng đời phần mềm 1.1.3 Quy trình phát triển phần mềm 11 1.2 Hệ chuyên gia 12 1.2.1 Khái niệm hệ chuyên gia 12 1.2.2 Cấu trúc hệ chuyên gia 12 1.2.2.1 Cơ sở tri thức 12 1.2.2.2 Bộ nhớ làm việc .12 1.2.2.3 Môtơ suy diễn 13 1.2.2.4 Phương tiện giải thích 13 1.2.2.5 Giao diện 14 CHƯƠNG II: ỨNG DỤNG CƠNG NGHỆ PHẦN MỀM TRONG BÀI TỐN HỆ CHUYÊN GIA .15 2.1 Xác định vấn đề 15 2.2 Thu thập tri thức 17 2.2.1 Các loại tri thức 17 2.2.2 Các nguồn tri thức .17 2.2.3 Quá trình thu thập tri thức 18 2.2.4 Thời gian cần thiết cho việc thu thập tri thức 19 2.2.5 Vai trò thành viên tham gia 19 2.2.6 Phân tích tri thức 20 2.2.6.1 Ghi lại tri thức 20 2.2.6.2 Liên kết tri thức 21 2.2.6.3 Xem xét lại tri thức 21 2.2.6.4 Cấu trúc tri thức cách đồ hoạ .21 2.3 Thiết kế 22 2.3.1 Chọn kỹ thuật thể tri thức 22 2.3.1.1 Tiếp cận dựa khung 22 2.3.1.2 Tiếp cận dựa luật 22 2.3.1.2 Tiếp cận quy nạp 23 2.3.2 Chọn kỹ thuật điều khiển 23 2.3.2.1 Suy diễn tiến 23 NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA 2.3.2.2 Suy diễn lùi 23 2.3.3 Lựa chọn phần mềm phát triển hệ chuyên gia 23 2.3.4 Thiết kế giao diện người dùng .25 2.3.5 Phát triển mẫu .25 2.4 Kiểm chứng hệ thống 26 2.4.1 Kiểm chứng lại kết 26 2.4.1.1 Chọn tiêu chuẩn kiểm thử 27 2.4.1.2 Chọn trường hợp kiểm thử 27 2.4.1.3 Chọn người đánh giá 27 2.4.2 Kiểm chứng lập luận 28 2.4.2.1 Giai đoạn đánh giá: thử sơ 28 2.4.2.2 Giai đoạn đánh giá : thử trình diễn 29 2.4.2.3 Giai đoạn đánh giá: thử kiểm tra phi hình thức .30 2.4.2.4 Giai đoạn đánh giá: kiểm thử tinh chỉnh hệ thống 30 2.4.2.5 Giai đoạn đánh giá: kiểm thử phi hình thức 30 2.4.2.6 Giai đoạn đánh giá: thử lĩnh vực 31 2.5 Bảo trì 32 2.5.1 2.5.2 2.5.3 2.5.4 Cấu trúc khối 32 Phân biệt tri thức thông tin .32 Các luật meta 33 Làm tư liệu bảo trì 33 CHƯƠNG III: XỬ LÝ TRI THỨC TRONG HỆ CHUYÊN GIA .34 3.1 Biểu diễn tri thức 34 3.2 Xử lý tri thức .35 3.2.1 Suy diễn 36 3.2.1.1 Suy diễn suy luận .36 3.2.1.3 Suy diễn abductive 36 3.2.1.4 Suy diễn tương tự .37 3.2.1.5 Suy diễn common-sense 37 3.2.1.6 Suy diễn non-monotonic 38 3.2.2 Suy diễn hệ chuyên gia 39 3.2.2.1 Modus Ponens 39 3.2.2.2 Sự giải 40 3.2.2.3 Không giải (nonresolution) 43 3.2.3 Suy diễn tiến 44 3.2.3.1 Định nghĩa 44 3.2.3.2 Chiến luợc giải mâu thuẫn suy diễn tiến .46 3.2.4 Suy diễn lùi 49 3.2.4.1 Định nghĩa 49 3.2.4.2 Chiến lược giải đụng độ suy diễn lùi 53 3.2.4.3 Lịch goal 53 NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA 3.2.5 Ưu nhược điểm chiến lược suy diễn tiến suy diễn lùi 53 3.2.5.1 Ưu điểm chiến lược suy diễn tiến .53 3.2.5.2 Nhược điểm chiến lược suy diễn tiến 54 3.2.5.3 Ưu điểm hệ thống suy diễn lùi 55 3.2.5.4 Nhược điểm hệ thống suy diễn lùi 55 3.2.6 Kết hợp hai chiến lược suy diễn tiến suy diễn lùi 55 3.2.6.1 Các hệ thống riêng biệt 56 3.2.6.2 Luật thông minh (demon rules) .56 3.2.7 Suy diễn monotonic 58 3.2.8 Suy diễn non-monotonic 58 3.2.9 Suy diễn monotonic suy diễn non-monotonic 59 CHƯƠNG IV: SUY DIỄN KHÔNG CHẮC CHẮN .61 4.1 Các khái niệm giả thuyết chắn .61 4.1.1 4.1.2 4.1.3 4.1.4 Xác suất 61 Chỉ số tin tưởng MB (Measure of Belief) 62 Chỉ số không tin tưởng MD (Measure of Disbelief) 62 Chỉ số chắn CF 62 4.2 Khó khăn giải thích xác suất CF 65 4.3 Chỉ số chắn có điều kiện .66 4.4 Biểu diễn kiện không chắn 66 4.5 Biểu diễn luật không chắn 67 4.6 Tính CF luật 67 4.6.1 Đối với luật có giả thiết dạng IF E THEN H CF(RULE) 67 4.6.2 Đối với luật nhiều giả thiết dạng IF E1 AND E2 AND THEN H 68 4.6.3 Đối với luật nhiều giả thiết dạng IF E1 OR E2 OR THEN H 68 4.6.4 Đối với luật có kết luận tương tự 69 4.6.5 Đối với luật phức tạp .72 4.7 Vấn đề chuỗi suy diễn dài 72 4.8 Vấn đề với luật có kết luận tương tự 73 4.9 Vấn đề với luật “và” .73 CHƯƠNG V:CÀI ĐẶT CÔNG CỤ SUY DIỄN – ỨNG DỤNG ĐÁNH GIÁ CHẤT LƯỢNG CHƯƠNG TRÌNH ĐÀO TẠO 76 5.1 Lý lựa chọn .76 5.2 Mơ hình hố tốn 76 NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA 5.2.1 Cơ sở tri thức cho hệ chuyên gia 76 5.2.2 Mô tơ suy diễn giải thích 78 5.2.2.1 Chức xây dựng nhớ làm việc .79 5.2.2.2 Chức suy diễn tiến 81 5.2.2.3 Chức suy diễn lùi 84 5.2.2.4 Chức giải thích 87 5.2.2.5 Chức ghi vào sở tri thức 88 5.3 Kết thực 90 5.4 Ứng dụng đánh giá chất lượng chương trình đào tạo: .93 CHƯƠNG VI: KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN .94 NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA LỜI NÓI ĐẦU Hệ chuyên gia chương trình máy tính bắt chước q trình suy luận chuyên gia người thể ứng xử chuyên gia người Nó suy luận từ thông tin thiếu chắn mơ hồ Tri thức thân nó, thường khơng xác hồn tồn, tri thức người khơng hoàn chỉnh toàn diện (imperfect) Các kiện hay thông tin người sử dụng cung cấp thường không rõ ràng Hệ chuyên gia dựa công nghệ trí tuệ nhân tạo Nó sử dụng tri thức phạm vi đặc trưng (knowledge about a particular domain) kỹ thuật suy diễn để cung cấp hành động thể chuyên gia người Bất người đạt chuyên môn qua việc học hành quan trọng qua việc rèn luyện Hệ chuyên gia tin tưởng để đạt điều từ tương tác với chuyên gia người Cùng với phát triển không ngừng cơng nghệ phần mềm, trí tuệ nhân tạo nói chung hệ chuyên gia nói riêng có bước phát triến Một yêu cầu đặt lý thuyết công nghệ phần mềm phát triển ứng dụng vào xây dựng tốn hệ chuyên gia hệ chuyên gia phần công nghệ phần mềm bảng sau: Quy trình làm phần mềm Quy trình xây dựng hệ chuyên gia Khảo sát, xác định yêu cầu, tính khả Khảo sát, xác định yêu cầu, tính khả thi thi Thu thập liệu Thu thập tri thức Phân tích Phân tích Thiết kế Thiết kế Cài đặt Cài đặt Kiểm thử Kiểm thử Bảo trì Bảo trì Mặt khác ngày có nhiều hệ chuyên gia cho phép sử dụng tri thức chuyên gia lĩnh vực để đưa lời khuyên, tư vấn giải vấn đề khác đời sống NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA Để xây dựng hệ chuyên gia cần thiết phải phân tích, thiết kế xây dựng thành phần Tuy nhiên, lần xây dựng hệ chun gia đó, ta phải bắt đầu phân tích thiết kế lại từ đầu tốn thời gian tiền bạc mà hiệu thu chưa tối ưu, khó kế thừa ưu điểm hệ chuyên gia cũ Do đó, việc xây dựng cơng cụ chung cho hệ chuyên gia cần thiết Người kỹ sư tri thức sau thu thập tri thức sử dụng công cụ để lựa chọn phương pháp biểu diễn tri thức phù hợp, sau tuỳ theo yêu cầu cụ thể toán mà lựa chọn chiến lược suy diễn phù hợp Ví ý tưởng đồ án xây dựng công cụ chung với chiến lược suy diễn đáp ứng yêu cầu Bộ công cụ nhỗ trợ cho hệ chuyên gia thuộc nhiều lĩnh vực khác Đồ án gồm phần sau: • Chương I: Giới thiệu chung công nghệ phần mềm hệ chuyên gia Chương giới thiệu lý thuyết công nghệ phần mềm hệ chuyên gia • Chương II: Ứng dụng công nghệ phần mềm toán hệ chuyên gia Giải toán hệ chun gia dựa quy trình cơng nghệ phần mềm • Chương III: Xử lý tri thức hệ chuyên gia Chương đề cập đến phương pháp suy diễn hệ chuyên gia • Chương IV: Suy diễn dựa lý thuyết độ chắn chắn Chương trình bày lý thuyết độ chắn (certainty theory) phương pháp suy diễn dựa lý thuyết độ chắn • Chương V: Cài đặt cơng cụ suy diễn - phân tích tốn đánh giá chất lượng chương trình giáo dục • Chương VI: Kết luận định hướng phát triển NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA Cấu trúc đồ án: Lý thuyết công nghệ phần mềm Lý thuyết xây dựng hệ chuyên gia Bộ công cụ suy diễn hệ chuyên gia Phân tích tốn đánh giá chất lượng chương trình giáo dục Cài đặt chương trình Thử nghiệm Trong thời gian thực đồ án, cố gắng với giúp đỡ tận tình thầy hướng dẫn hạn chế thời gian trình độ kiến thức nên chắn đồ án khơng tránh thiếu sót Rất mong nhận ý kiến đóng góp bảo thầy giáo quan tâm NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA CHƯƠNG I: GIỚI THIỆU CHUNG VỀ CÔNG NGHỆ PHẦN MỀM VÀ HỆ CHUYÊN GIA 1.1 Công nghệ phần mềm 1.1.1 Định nghĩa công nghệ phần mềm Bauer (1969): Công nghệ phần mềm việc thiết lập sử dụng nguyên lý công nghệ đắn để thu phần mềm cách kinh tế vừa tin cậy vừa làm việc hiệu máy thực Parnas(1987): Công nghệ phần mềm việc xây dựng phần mềm nhiều phiên nhiều người Ghezzi (1991): Công nghệ phần mềm lĩnh vực khoa học máy tính, liên quan đến xây dựng hệ thống phần mềm vừa lớn vừa phức tạp hay số nhóm kỹ sư IEEE (1993) : Cơng nghệ phần mềm là: Việc áp dụng phương pháp tiếp cận có hệ thống, lượng hóa phát triển vận hành bảo trì phần mềm Nghiên cứu phương pháp tiếp cận dùng (1) Pressman (1995): Công nghệ phần mềm phát triển công nghệ phần cứng hệ thống Nó bao gồm tập gồm ba yếu tố chủ chốt: phương pháp, công cụ thủ tục làm cho người quản lý kiểm sốt tiến trình phát triển phần mềm cung cấp cho người hành nghề tảng để xây dựng phần mềm chất lượng cao theo cách có hiệu suất 1.1.2 Vịng đời phần mềm Vịng đời phần mềm thời kỳ tính từ phần mềm sinh không sử dụng (từ lúc hình thành đáp ứng yêu cầu, vận hành bảo dưỡng loại bỏ khơng đâu dùng) Quy trình phát triển phần mềm bao gồm giai đoạn chính: xác định, phát triển bảo trì Giai đoạn xác định tập trung vào Giai đoạn tập trung vào xác định thông tin cần xử lý, chức hiệu cần có, giao diện cần thiết lập, ràng buộc thiết kế có tiêu chuẩn hợp lệ NGUYỄN TRỌNG ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA cần có để xác định hệ thống thành công Yêu cầu chủ chốt hệ thống phần mềm xác định Có ba bước riêng xuất dạng: Phân tích hệ thống: Xác định vai trò phần tử hệ thống dựa máy tính, vai trị mà phần mềm giữ Lập kế hoạch dự án phần mềm: Một phạm vi phần mềm thiết lập, rủi ro phân tích, tài nguyên cấp phát, chi phí ước lượng phải xác định nhiệm vụ cơng việc lập lịch Phân tích yêu cầu: Phân tích phần mềm làm cho người phân tích hệ thống xác định chức hiệu suất phần mềm, giao diện phần mềm với phần tử hệ thống khác, thiết lập ràng buộc thiết kế mà phần mềm phải đáp ứng Giai đoạn phát triển tập trung vào Người phát triển cố gắng xác định cách cấu trúc liệu kiến trúc phần mềm cần thiết kế, chi tiết thủ tục cài đặt, cách dịch thiết kế vào ngôn ngữ lập trình cách thực kiểm thử Phương pháp áp dụng giai đoạn phát triển thay đổi có bước đặc thù xuất dạng: Thiết kế phần mềm: Thiết kế dịch yêu cầu phần mềm thành tập hợp biểu diễn (dựa đồ hoạ, bảng hay ngôn ngữ) mô tả cho cấu trúc liệu, kiến trúc, thủ tục thuật toán đặc trưng giao diện Thiết kế phần mềm tiến hành theo hai bước Thiết kế sơ quan tâm tới việc dịch yêu cầu thành kiến trúc liệu phần mềm Thiết kế chi tiết tập trung vào làm mịn biểu diễn kiến trúc để dẫn tới cấu trúc liệu chi tiết biểu diễn thuật toán cho phần mềm Mã hoá: Các biểu diễn thiết kế phải dịch thành ngơn ngữ nhân tạo (ngơn ngữ ngơn ngữ lập trình quy ước ngơn ngữ phi thủ tục dùng hồn cảnh khn cảnh 4GT) mà tạo kết lệnh thực máy tính Bước mã hố thực việc Kiểm thử phần mềm: Mỗi phần mềm cài đặt dạng mã máy thực cần phải kiểm thử để phát khiếm khuyết vận hành, logic cài đặt Giai đoạn bảo trì tập trung vào thay đổi gắn với việc sửa lỗi, thích ứng mơi trường phần mềm tiến hoá nâng cao gây thay đổi yêu NGUYỄN TRỌNG ĐÔNG 10  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA Kết sau thực chức Bộ nhớ làm việc xây dựng Suy diÔn lïi Giao diện Người dùng Bộ nhớ làm việc Yêu cầu cho biết CF kiện Yêu cầu cho biết CF kiện Danh sách giả thiết kết ln Tr¶ lêi Tr¶ lêi cđa ng­êi dïng Hình 5.3 Xây dựng nhớ làm việc cho suy diễn lùi 5.2.2.2 Chức suy diễn tiến Mô tả Cùng với chức suy diễn lùi chức trọng tâm hệ thống Người dùng có nhiệm vụ cho biết thông tin kiện bắt đầu suy diễn Hệ thống dựa vào thông tin mà suy diễn thông tin Luồng kiện Chức thực người dùng chọn sử dụng chiến lược suy diễn tiến Điều kiện thực chức Người dùng sử dụng phải xây dựng nhớ làm việc cho suy diễn tiến Kết sau thực chức Suy diễn thông tin, chứng minh kết luận người dùng nhập có khơng Giải thuật suy diễn tiến Đầu vào: - Tập giả thiết GT={g1,g2…} NGUYỄN TRỌNG ĐÔNG 81  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA - Tập luật RULE={r1,r2,…}có dạng chuẩn Horn p1^p2…^pnq - Tập kết luận KL={q1,q2,….,qk} Đầu Thông báo thành công kết luận suy từ giả thiết nhờ sử dụng tập luật cho Thuật toán: /* Tgian tập kiện tai thời điểm xét, ban đầu Tgian=GT*/ { TG=GT; SAT=loc{RULE,Tgian} /* SAT tập luật có dạng p1^p2^…^pnq cho ∀ 1,n, pi ∈ Tgian While KL ∉ Tgian and SAT ≠ φ { r ← get(SAT) /* lấy luật r khả hợp từ tập SAT theo chiến lược giải đụng độ chọn */ /* giả sử r có dạng p1^p2…^pnq*/ Tgian ← Tgian ∪ {q} /* bước có tính lại CF q theo cơng thức tính CF từ nhiều nguồn (12) chương IV */ RULE ← RULE \{r} SAT=loc(RULE,Tgian) } If KL ⊂ Tgian then Exit (“ Thành công ”) Else Exit(“Không thành cơng”) } NGUYỄN TRỌNG ĐƠNG 82  ĐỒ ÁN TỐT NGHIỆP C¬ së tri thøc BỘ CƠNG CỤ SUY DIỄN CHO HỆ CHUN GIA Suy diƠn tiÕn Bé nhí làm việc Giao diện Người dùng Danh sách luật kiện D/s giả thiết kết luận D/s giả thiÕt Ch¸y lt KÕt ln cđa lt ch¸y Hình 5.4 Suy diễn tiến Giải cạnh tranh suy diễn tiến: Để giải vấn đề xin nêu định nghĩa bổ trợ sau: - Đồ thị FPG: Một kiện Fi đứng trước kiện Fj (ta kí hiệu Fi  Fj) Fj kết luật r mà chứa F i bên phía trái Fi  Fj ⇔∃ r: l eft  right thoả mãn Fj ∈ right Fi ∈ left - Đồ thị RPG: Một luật riđứng trước luật rj (ta kí hiệu ri  rj) có kết luật ri đồng thời nằm phần điều kiện luật rj Ri  rj ⇔∃ F: F ∈ righti F ∈ leftj Trong suy diễn tiến tình đụng độ xảy với tập F đó, ∃ ri, rj lefti, leftj ∈ F Câu hỏi đặt áp dụng luật Để giải vấn đề này, sử dụng giải pháp sau đây: • Giải pháp 1: Tổ chức luật theo cấu trúc (như stack, queue) • Giải pháp 2: Sử dụng đồ thị FPG - đồ thị thứ tự kiện (Fact predence Graph) Lựa chọn luật có kiện mức thấp FPG, mức sử dụng chiến lược để lựa chọn duyệt theo chiều rộng, duyệt theo chiều sâu • Giải pháp 3: Sử dụng đồ thị RPG - đồ thị thứ tự luật (Rule Precedence Graph) NGUYỄN TRỌNG ĐÔNG 83  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA Lựa chọn luật có mức độ thấp FPG, mức sử dụng chiến lược để lựa chọn duyệt theo chiều rộng, duyệt theo chiều sâu • Giải pháp 4: Sử dụng heuristic Các heuristic sử dụng độ chắn luật (Sử dụng luật có độ cao hơn) Trong đồ án lựa chọn giải pháp 5.2.2.3 Chức suy diễn lùi Mô tả Cũng giống chức suy diễn tiến, chức trọng tâm hệ thống Người dùng có trách nhiệm trả lời câu hỏi hệ thống đưa trình suy diễn Anh ta đưa câu hỏi yêu cầu hệ thống trả lời “Tại hệ thống lại hỏi người dùng câu hỏi vậy?” Luồng kiện Chức thực người dùng chọn sử dụng chiến lược suy diễn lùi Điều kiện thực chức Người dùng sử dụng phải trả lời đầy đủ câu hỏi hệ thống đưa để xây dựng nhớ làm việc cho suy diễn lùi Kết sau thực chức Chứng minh kết luận người dùng nhập có khơng Giải thuật suy diễn lùi Đầu vào: - Tập giả thiết GT={g1,g2…} /*tập xây dựng dần người dùng trả lời câu hỏi hệ thống*/ - Tập luật RULE={r1,r2,…}có dạng chuẩn Horn p1^p2…^pnq - Tập kết luận KL={q1,q2,….,qk} Đầu ra: NGUYỄN TRỌNG ĐÔNG 84  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA Thông báo thành công kết luận suy từ giả thiết nhờ sử dụng tập luật cho Giải thuật Subgoal={KL} Repeat F ← get(subgoal) TimLuat(f,i,RULE,j) If j ≤ m { For each t ∈ leftj\GT If isPrimive(t) then { Hoi_nguoi_dung GT=GT ∪ {t} } Else subgoal=subgoal ∪ {t} } Until subgoal= φ /* Vet danh sách dạng stack*/ /* Goal danh sách dạng stack*/ { goal= φ ; Vet= φ ; First=0; For each q ∈ KL goal=goal ∪ {q,0} Repeat { {f,i} ← get(goal); first=first+1; back=false if not(f ∈ GT then) { TimLuat(f,i,RULE,j) /**/ If j ≤ m then { Vet=Vet ∪ {(f,j)}; for each t ∈ leftj\GT goal=goal ∪ {(t,0)} TinhLaiCF } } Else { back=true; while (f ∉ KL and back) { repeat NGUYỄN TRỌNG ĐÔNG 85  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA { (g,k) ← get(vet); goal=goal\leftk } until f ∈ left k TimLuat(g,k,RULE,l); If l ≤ m then { goal=goal\leftk for each t ∈ leftl\GT goal=goal ∪ {(t,0)} Vet=Vet {(g,l)}; Back=false; } Else f=g; } } } Until goal= φ or {f ∈ KL and (first ≥ 2)} If f ∈ KL then exit “Không thành công” Else exit(“Thành công”) } } } Trong giải thuật ta sử dụng thủ tục: TimLuat(f,i,RULE,j) Xác định xem có luật kể từ luật thứ i+1 trở cho rj có dạng leftjf Trong trường hợp khơng tìm ta có j=m+1 NGUYỄN TRỌNG ĐƠNG 86  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUN GIA C¬ së tri thøc Suy diƠn lïi Bé nhớ làm việc Giao diện Người dùng Danh sách luật kiện Kết luận Kết luận Cháy luật Yêu cầu cho CF kiện Yêu cầu cho CF Y/c giải thích câu hỏi Yêu cầu giải thích câu hái KÕt qu¶ gi¶i thÝch KÕt qu¶ gi¶i thÝch CF cđa sù kiƯn CF cđa sù kiƯn Hình 5.4 Suy diễn lùi Cạnh tranh suy diễn lùi: Tình cạnh tranh suy diễn lùi xảy với kiện f tồn hai luật: ri: Left f rj: Left f Giải pháp sử dụng đồ thị FPG RPG Xử lý vấn đề nối vòng suy diễn lùi Nối vòng phát dựa vào định nghĩa đệ quy trái Định nghĩa đệ quy trái: Sự kiện A đệ quy trái suy diễn lùi tồn vết suy diễn Vei để: {Aα } ← {Auα} Khi thực suy diễn lùi phát đệ quy trái phải thực quay lui 5.2.2.4 Chức giải thích Mơ tả NGUYỄN TRỌNG ĐƠNG 87  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA Hiến nhiên sau trính suy diễn, nhận kết luận, người dùng mong muốn biết vết suy diễn Chức giải thích đáp ứng đầy đủ yêu cầu người dùng Luồng kiện Chức thực người dùng muốn theo vết suy diễn Điều kiện thực chức Người dùng sử dụng phải chọn chiến lược suy diễn thoả mãn đầy đủ yêu cầu chức suy diễn Kết sau thực chức Theo vết suy diễn, giúp người dùng hiểu trình suy diễn để đưa kết luận Bé nhí lµm viƯc Giao diƯn Ng­êi dïng Sự kiện cần giải thích Sự kiện cần giải thích VÕt suy diƠn VÕt suy diƠn Hình 5.5: Chức giải thích 5.2.2.5 Chức ghi vào sở tri thức Mô tả Sau suy diễn, nhận kết mong muốn biết trình suy diễn để đưa kết luận, người dùng ln có nhu cầu ghi lại kết suy diễn NGUYỄN TRỌNG ĐÔNG 88  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA để làm giầu thêm sở tri thức phục vụ cho lần suy diễn Chức đáp ứng yêu cầu người dùng Luồng kiện Chức thực người dùng muốn ghi kết suy diễn vào sở tri thức Giả sử đầu vào chiến lược suy diễn tập GT={g1,g2,…gl} Đầu tập kết luận KL={q1,…qk} Khi luật sau ghi vào sở tri thức g1^g2^….q1 g1^g2^….q2 …… g1^g2^….qk Các luật thêm làm giàu thêm sở tri thức Điều kiện thực chức Người dùng sử dụng phải chọn chiến lược suy diễn thoả mãn đầy đủ yêu cầu chức suy diễn Kết sau thực chức Cập nhật sở tri thức NGUYỄN TRỌNG ĐÔNG 89  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUN GIA Ng­êi dïng Giao diƯn Bé nhí lµm việc Cơ sỏ tri thức Yêu cầu ghi vào CSTT Yêu cầu ghi vào CSTT Danh sách luật cần ghi KÕt qu¶ ghi KÕt qu¶ ghi Hình 5.6 Ghi vào sở tri thức 5.3 Kết thực Sau cài đặt, công cụ phần đáp ứng yêu cầu người dùng yêu cầu suy diễn tri thức từ tri thức sẵn có Một ưu điểm cơng cụ áp dụng với tri thức không chắn, không đầy đủ, tri thức thu thập từ nhiều nguồn tri thức khác Minh hoạ hai chức suy diễn tiến suy diễn lùi - Giả sử ta dùng chung sở tri thức có kiện sau: Thời tiết khó chịu E1 Tôi cảm thấy buồn E2 Tôi tin trời mưa E3 Nha khí tượng dự báo trời mưa E4 Tơi khơng xem bóng đá E5 Và luật sau: Rule 1: CF=0,8 IF Thời tiết khó chịu AND Tơi cảm thấy buồn THEN Tơi khơng xem bóng đá Rule CF=0,8 IF Tơi tin trời mưa THEN Thời tiết khó chịu NGUYỄN TRỌNG ĐÔNG 90  ĐỒ ÁN TỐT NGHIỆP Rule IF AND THEN BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA CF=0,8 Tôi tin trời mưa Nha khí tượng dự báo trời mưa Tơi cảm thấy buồn Rule CF=0,8 IF Nha khí tượng dự báo trời mưa THEN Thời tiết khó chịu Rule CF=1 IF Thời tiết khó chịu THEN Tơi cảm thấy buồn Áp dụng chiến lược suy diễn tiến Đầu vào giả thiết: Tôi tin trời mưa CF(E3)=0,6 Nha khí tượng dự báo trời mưa CF(E4)=0,8 Đầu kết luận cần chứng minh: Tôi không xem bóng đá Sử dụng chiến lược giải đụng độ cháy luật Ta có kết sau: Ban đầu: GT={(E3;0,6),(E4;0,8)} Tgian={(E3;0,6),(E4;0,8)} SAT={Rule2,Rule3,Rule4} Áp dụng Rule2 Tgian={(E3;0,6),(E4;0,8),(E1;0,48)} SAT={Rule3,Rule4,Rule5} Lúc KL ∉ Tgian SAT ≠ φ nên tiếp tục thực hiện, áp dụng Rule3 Tgian={(E3;0,6),(E4;0,8),(E1;0,48),(E2;0,48)} SAT={Rule1,Rule4,Rule5} Lúc KL ∉ Tgian SAT ≠ φ nên tiếp tục thực hiện, áp dụng Rule1 Tgian={(E3;0,6),(E4;0,8),(E1;0,48),(E2,0,48),(E5;0,48)} NGUYỄN TRỌNG ĐÔNG 91  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA SAT={Rule4,Rule5} Lúc KL ∈ TG giải thuật dừng Ta có CF(Tơi khơng xem bóng đá)=0,48 nghĩa hệ thống đưa kết luận “Tơi khơng xem bóng đá” Áp dụng suy diễn lùi Cần suy kết luận “Tơi khơng xem bóng đá” Sử dụng chiến lược giải đụng độ cháy luật Ban đầu GT= φ ; subgoal ={E5} Áp dụng TimLuat(E5,0,RULE,j) j=1 E1 E2 không primitive subgoal={E1,E2} Áp dụng TimLuat(E1,0,RULE,j) j=2 E3 primitive hỏi người dùng GT={E3},subgoal={E2} Áp dụng TimLuat(E2,0,RULE,j) j=3 E4 không kết luận luật khác Hỏi người dùng GT={E3,E4},subgoal={ φ } GT={(E5,0)},VET={ φ } Lấy (E5,0) khỏi goal có goal={ φ } Áp dụng tìm luật (E5,0,RULE,j) j=1,goal={(E1,0),(E2,0)} Vì j ≤ nên Vet={(5,1)} Lấy (E1,0) khỏi goal có goal={(E2,0)} Áp dụng tìm luật (E2,0,RULE,j) j=3; goal={(E2,0)} Vì j ≤ nên Vet={(5,1),(1,2)} Tính CF(E1)=0,48 Lấy (E2,0) khỏi goal có goal= φ Áp dụng tìm luật (E2,0,RULE,j) j=3; goal= φ Vì j ≤ nên Vet={(5,1),(1,2),(2,3)} Tính CF(E2)=0,48,CF(E5)=0,48 Giải thuật dừng goal= φ Ta có CF(Tơi khơng xem bóng đá)=0,48 nghĩa hệ thống đưa kết luận “Tơi khơng xem bóng đá” NGUYỄN TRỌNG ĐƠNG 92  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA 5.4 Ứng dụng đánh giá chất lượng chương trình đào tạo: Để đánh giá chương trình đào tạo tốt hay khơng tốt,có đáp ứng u cầu không đánh giá dựa bốn vấn đề là: - Tính chuẩn xác - Cấu trúc chương trình đào tạo - Cấu trúc chương trình modun mơn học - Các học modun mơn học Các tiêu trí đánh giá dựa vào độ tin cậy theo đánh giá chuyên gia Mỗi kiện đánh giá theo chín mức tin cậy khác (CF) Một chương trình đào tạo gọi đáp ứng yêu cầu phải qua thực tế kiểm nghiệm chuyên gia với kinh nghiệm thưc tế dễ dàng thấy trước khả thành công hay không thành công chương trình để gộp tri thức nhiều chuyên gia hệ chuyên gia đời đáp ứng yêu cầu làm cho công việc đánh giá chất lượng trở lên khách quan Để đưa kết luận chương trình người ta phải dựa nhiều tiêu chí khác kế đánh giá dựa vào tiêu chí tơngr hợp lại … Chính sớ luật biểu diễn dứơi dạng chuẩn Horn kết kiện để đưa kết luận NGUYỄN TRỌNG ĐÔNG 93  ĐỒ ÁN TỐT NGHIỆP CHƯƠNG VI: BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN Sự tiến ngành cơng nghệ thơng tin nói chung hệ chuyên gia nói riêng góp phần làm thay đổi xã hội đại Kể từ đời, hệ chuyên gia làm cho máy tính có khả giải vấn đề loài người Trong hoàn cảnh vậy, việc đưa cơng cụ trợ giúp cho q trình thu thập, biểu diễn xử lý tri thức đặc biệt quan trọng Nhìn chung đồ án tập trung vào tìm hiểu quy trình xây dựng toán hệ chuyên gia lý thuyết liên quan đến trình xử lý tri thức: chiến lược suy diễn, lý thuyết không chắn Đồ án xây dựng công cụ cho hệ chuyên gia nhằm ứng dụng nghiên cứu Bộ công cụ cho phép người dùng tự xây dựng cho hệ chuyên gia Nhiệm vụ họ thu thập tri thức chun mơn sử dụng công cụ để biểu diễn xử lý tri thức, xây dựng hệ chuyên gia mong muốn Ngoài đồ án Đồ án định định hướng phát triển sau: - Đối với hệ chuyên gia khác cần phải có phương pháp đánh giá chất lượng, hiệu quả, ý nghĩa - Phát triển công cụ mơ hình mạng nhiều máy đơn khác - Triển khai ứng dụng vào thực tế Trong điều kiện cịn eo hẹp, trình độ người viết cịn hạn chế, nên đồ án cịn thiếu sót Rất mong góp ý đóng góp thầy giáo bạn để đồ án hoàn thiện NGUYỄN TRỌNG ĐÔNG 94  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA NGUYỄN TRỌNG ĐÔNG 95 ... phần hệ chuyên gia NGUYỄN TRỌNG ĐÔNG 14  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA CHƯƠNG II: ỨNG DỤNG CÔNG NGHỆ PHẦN MỀM TRONG BÀI TOÁN HỆ CHUYÊN GIA Xây dựng ứng dụng hệ chuyên gia. .. Đồ án gồm phần sau: • Chương I: Giới thiệu chung công nghệ phần mềm hệ chuyên gia Chương giới thiệu lý thuyết công nghệ phần mềm hệ chun gia • Chương II: Ứng dụng cơng nghệ phần mềm toán hệ chuyên. .. ĐÔNG  ĐỒ ÁN TỐT NGHIỆP BỘ CÔNG CỤ SUY DIỄN CHO HỆ CHUYÊN GIA CHƯƠNG I: GIỚI THIỆU CHUNG VỀ CÔNG NGHỆ PHẦN MỀM VÀ HỆ CHUYÊN GIA 1.1 Công nghệ phần mềm 1.1.1 Định nghĩa công nghệ phần mềm Bauer

Ngày đăng: 24/04/2015, 22:13

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan