Bài tập có lời giải môn hệ chuyên gia năm 2024

Diunggah oleh

meomeoo

0% menganggap dokumen ini bermanfaat (0 suara)

5K tayangan

1 halaman

Hak Cipta

© Attribution Non-Commercial (BY-NC)

Format Tersedia

DOC, PDF, TXT atau baca online dari Scribd

Bagikan dokumen Ini

Apakah menurut Anda dokumen ini bermanfaat?

Apakah konten ini tidak pantas?

0% menganggap dokumen ini bermanfaat (0 suara)

5K tayangan1 halaman

BÀI TẬP LỚN MÔN HỆ CHUYÊN GIA

Diunggah oleh

meomeoo

Lompat ke Halaman

Anda di halaman 1dari 1

Cari di dalam dokumen

Puaskan Keingintahuan Anda

Segala yang ingin Anda baca.

Kapan pun. Di mana pun. Perangkat apa pun.

Tanpa Komitmen. Batalkan kapan saja.

Bài tập có lời giải môn hệ chuyên gia năm 2024

LỜI NÓI ĐẦU..........................................................................................................................

BẢNG PHÂN CÔNG CÔNG VIỆC TRONG NHÓM.........................................................

Cấu trúc đề tài gồm 3 mục chính được đánh số I đến III, đi từ việc giới thiệu đề tài và mục đích đề tài đến hướng giải quyết chính và cuối cùng là chi tiết cài đặt chương trình Demo của nhóm. Ngoài ra phần đầu đề tài là “giới thiệu sơ lược nội dung đề tài” và phần cuối là “Một số tài liệu tham khảo” được nhóm sử dụng. Một nội dung quan trong của đề tài là phần thuật toán sử dụng và chi tiết cài đặt thuật toán của nhóm. Đề tài với mục đích demo là chính giúp chúng ta hiểu được vai trò quan trọng của việc xây dựng các hệ chuyên gia, và công dụng hữu ích của chúng cho con người, hiểu được các bước cơ bản để hiện thực hóa một hệ chuyên gia. Sau đây là nội dung chi tiết của đề tài, mọi ý kiến đóng góp xin gửi về nhóm thực hiện Nhóm 8 Lớp KHMT1 - K5 Trường ĐH Công Nghiệp Hà Nội.

LỜI NÓI ĐẦU

BẢNG PHÂN CÔNG CÔNG VIỆC TRONG NHÓM

STT Họ và tên Công việc Thời gian Tiến độ 1 Đào Ngọc Luân I đến III 07/2013 100% 2 Phùng Minh Tuân I đến III 07/2013 100% 3 Vũ Hoàng Tuấn I đến III 07/2013 100%

Trong thời gian thực hiện đề tài, nhóm đã họp mặt nhiều lần để bàn luận và góp ý lẫn nhau giúp hoàn thiện đề tài. Các cuộc họp của nhóm xoay quanh các mục đích nghiên cứu của đề tài và bàn luận về phương pháp từ việc thu thập tài liệu đến việc nên lấy phần nào của tài liệu đưa vào bài... Chúng em xin trân thành cảm ơn sự giúp đỡ nhiệt tình từ phía các thầy cô giáo khoa Công Nghệ Thông Tin trường ĐH Công Nghiệp Hà Nội đã giúp đỡ chúng em trong việc cung cấp tài liệu và hướng dẫn đọc hiểu tài liệu và gỡ bỏ những vướng mắc gặp phải. Chúng em cũng xin trân thành cảm ơn thầy Trần Thanh Hùng đã tận tình chỉ bảo, giúp đỡ chúng em để chúng em không đi sai hướng và hoàn thành tốt đề tài. Hoạt động của nhóm theo hướng tất cả các thành viên cùng nghiên cứu chung các vấn đề khó, khi có vướng mắc hay phát hiện điều mới thì cùng nhau tranh luận để tìm ra hướng giải quyết thích hợp. Kết quả nhận được sau các cuộc họp của nhóm là sự thành công trong công việc của nhóm. Nhóm đã hoàn thiện việc xây dựng mục đích đề tài, đề cương vắn tắt các nội dung cần triển khai và bàn giao công việc cụ thể cho các thành viên. Bằng sự lỗ lực thật sự của bản thân các thành viên trong nhóm cuối cùng nhóm đã hoàn thiện đề tài tốt đẹp.

NỘI DUNG CHI TIẾT ĐỀ TÀI

I. GIỚI THIỆU ĐỀ TÀI VÀ GIAI ĐOẠN THU THẬP TRI THỨC CHUYÊN GIA..

THỨC CHUYÊN GIA

1) Trình bày tên đề tài và mục đích đề tài...................................................................

Tên của đề tài:...................................................................................................................

Xây dựng demo shệ chuyên gia Tư vấn tử vi.

Mục đích đề tài:................................................................................................................

Hệ chuyên gia xây dựng được phải có khả năng dự đoán tương lai của một người nào đo

Các yêu cầu xây dựng:.....................................................................................................

Cần dự đoán tương lại và hiện tại một cách chuẩn xác , giải thích rõ ràng, giao diện cần có tính hướng người sử dụng ...

2) Phát biểu bài toán.....................................................................................................

Bài toán là một hệ chuyên gia được xây dựng nhằm dự đoán tương lai của người sử dụng nó hoặc nó có thể giúp con người phần nào giảm đi áp lực khi gặp một vấn đề khó giải quyết nào đó. Với mong muốn một phần nào đó có thể tư vấn cho người sử dụng hệ thống biết tương lai mình như thế nào, số mình sướng hay khổ... , chương trình có thể đưa ra các lời khuyên hoặc nhận xét về con người bạn .Người sử dụng chỉ cần trả lời đúng hoặc sai các câu hỏi về nhận

  • Một người có thể được gọi là “Số nghèo khổ” khi người đó có những đặc điểm hình dáng như: “có mạt trái xoan”, “gò má cao”, “bàn tay ngắn” , “bàn tay vuông”..
  • Một người có thể được gọi là “Số lận đận” khi người đó có những đặc điểm hình dáng như: Có mặt trái xoan”, “gò má thấp”, “trán cao”, “trán rộng”.
  • Một người có thể được gọi là “Số thọ” khi người đó có những đặc điểm hình dáng như: “dáng vóc cao”, “nốt ruồi ở mặt”, “nốt ruồi ở chân”, “cổ tròn”,“gò má cao””.
  • Một người có thể được gọi là “Số bình an” khi người đó có những đặc điểm hình dáng như: “Dáng vóc cao”, “nốt ruồi ở tay”, “bàn tay vuông”.
  • Một người có thể được gọi là “Số tài giỏi” khi người đó có những đặc điểm hình dáng như: “Dáng vóc cao”, “trán cao”, “bàn tay dài”.
  • Một người có thể được gọi là “Số phát đạt” khi người đó có những đặc điểm hình dáng như: “trán rộng”, “cổ tròn”, “nốt ruồi ở mặt”, “bàn tay dài”.
  • Một người bị coi là mắc “bệnh thủy đậu” khi người đó có các triệu chứng như: “sốt”, “da nổi đỏ”, “mụn nước trên da”.

3) Xây dựng cơ sở tri thức............................................................................................

a) Quy ước..................................................................................................................
  • Quy ước “Số con người”:

o “Số đào hoa” : đặt là ‘1’ o “Số phát đạt”: đặt là ‘2’ o “Số sung túc”: đặt là ‘3’ o “Số lận đận ”: đặt là ‘4’ o “Số bình an”: đặt là ‘5’ o “Số nghèo khổ”: đặt là ‘6’ o “Số thọ”: đặt là ‘7’ o “Số phú quý”: đặt là ‘8’ o “Số tài giỏi”: đặt là ‘9’

  • Quy ước các đặc điểm hình dạng:

o “dáng vóc cao”: đặt là ‘a’ o “nốt ruồi ở mặt”: đặt là ‘b’ o “nốt ruồi ở tay”: đặt là ‘d’ o “nốt ruồi ở chân”: đặt là ‘e’ o “nốt ruồi ở vai”: đặt là ‘f’ o “bàn tay ngắn”: đặt là ‘g’ o “Bàn tay dài”: đặt là ‘h’ o “Bàn tay vuông”: đặt là ‘i’

Từ sơ đồ suy diễn trên ta có được tập 9 luật như sau: (dấu ^ biểu thị

  • NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN.......................................................................
  • MỤC LỤC................................................................................................................................
  • Giới thiệu sơ lược nội dung sẽ trình bày:................................................................................
  • LỜI NÓI ĐẦU..........................................................................................................................
  • BẢNG PHÂN CÔNG CÔNG VIỆC TRONG NHÓM.........................................................
  • NỘI DUNG CHI TIẾT ĐỀ TÀI...............................................................................................
  • I. GIỚI THIỆU ĐỀ TÀI VÀ GIAI ĐOẠN THU THẬP TRI THỨC CHUYÊN GIA..
    • 1. Trình bày tên đề tài và mục đích đề tài...................................................................
      • Tên của đề tài:...................................................................................................................
      • Mục đích đề tài:................................................................................................................
      • Các yêu cầu xây dựng:.....................................................................................................
    • 1. Phát biểu bài toán.....................................................................................................
      • a) Định nghĩa các “Số con người”............................................................................
    • 1. Xây dựng cơ sở tri thức............................................................................................
      • a) Quy ước..................................................................................................................
      • b) Sơ đồ suy diễn và các luật...................................................................................
  • II. PHÂN TÍCH BÀI TOÁN..............................................................................................
    • 1. Mô tả bài toán..........................................................................................................
    • 1. Hướng giải quyết.....................................................................................................
    • 1. Cấu trúc dữ liệu.......................................................................................................
      • a) Biểu diễn các sự kiện...........................................................................................
      • b) Biểu diễn các luật.................................................................................................
      • c) Biểu diễn danh sách các sự kiện.........................................................................
      • d) Biểu diễn danh sách các luật..............................................................................
    • 1. Thuật toán................................................................................................................
  • III. THIẾT KẾ CHƯƠNG TRÌNH DEMO....................................................................
    • 1. Ngôn ngữ và các công cụ........................................................................................
    • 1. Cài đặt......................................................................................................................
    • 1. Một số giao diện chính và kết quả chạy chương trình.........................................
    • 1. Đánh giá và hướng phát triển................................................................................
      • Hướng phát triển của đề tài:..........................................................................................
  • MỘT SỐ TÀI LIỆU THAM KHẢO....................................................................................
  • LỜI KẾT.................................................................................................................................
  • * Luật 1: a^b^c-> cho phép hội)
  • * Luật 2: a^b^d->
  • * Luật 3: a^b^e^f^g->
  • * Luật 4: a^o^y->
  • * Luật 5: a^o^u^p->
  • * Luật 6: f^h^r^g^x->
  • * Luật 7: f^h^t^i^j->
  • * Luật 8: k^l^m->
  • * Luật 9: n^u^q->

II. PHÂN TÍCH BÀI TOÁN..............................................................................................

1) Mô tả bài toán..........................................................................................................

Bài toán đặt ra khi xây dựng hệ chuyên gia Dự đoán về căn số tương lai con người:

  • Thu nhận các sự kiện do người dùng cung cấp miêu tả các triệu chứng mà họ gặp phải.
  • Áp dụng các luật có sẵn từ việc làm việc với các chuyên gia từ trước, được lưu trong một file dạng *.txt, để đưa ra dự đoán và nhận xét hợp lý.

2) Hướng giải quyết.....................................................................................................

Các bước xây dựng hệ chuyên gia dự đoán “Số con người”:

  • Xây dựng cấu trúc dữ liệu biểu diễn được các triệu chứng khác nhau và chỉ rõ giá trị của nó là: o True (đúng, người dùng có đặc điểm hình dáng đó) o False (sai, người dùng có đặc điểm hình dáng đó)

 Xây dựng: một lớp các sự kiện “SuKien” biểu diễn các đặc điểm hình dáng là các mệnh đề có giá trị “True” hoặc “False”.

  • Xây dựng cấu trúc dữ liệu lưu trữ cơ sở tri thức của hệ chuyên gia để sử dụng trong suy luận và đưa ra được tư vấn

 Lựa chọn của nhóm: xây dựng tập các luật sản xuất tổ chức trong một file *.txt.

  • Các thuộc tính và các phương thức: (Xin xem chi tiết trong class SuKien trong chương trình Demo kèm theo) b) Biểu diễn các luật Các luật là các tri thức chuyên gia được biểu diễn sao cho việc sử dụng luật cho ta kết quả là dự đoán người dùng có “Số như thế nào đó”.

Các luật trong chương trình được biểu diễn theo cấu trúc gồm:

  • Phần trái luật: (hay còn gọi là bộ khởi động) chứa danh sách các sự kiện cần có để luật được áp dụng và các toán tử ^(hội), @(tuyển) , ~(phủ định).
  • Phần phải luật: chứa sự kiện biểu diễn các loại bệnh (cụ thể trong chương trình là các bệnh từ 1 đến 9)
  • Khi phần trái luật được thỏa mãn (nhận giá trị logic bằng True) thì luật được khởi động và phần phải luật được áp dụng, nói cách khác là người dùng “có số ” như thế nào đó ở vế phải luật. Cụ thể trong chương trình mỗi luật sẽ là một đối tượng thể hiện của lớp “Luat” gồm có:
  • Các biến thành viên: o private char tenLuat;// tên của luật o private string traiLuat;// phần trái luật o private string phaiLuat;// phần phải luật o private string thanLuat;

// gồm phần trái luật và phần phải luật và dấu ngăn cách “->” giữa chúng

  • Các thuộc tính và phương thức: (Xin xem chi tiết trong class Luat trong chương trình Demo kèm theo) Các luật trong chương trình sẽ được lưu trữ dưới dạng các xâu trong một file *.txt (Luat) trong thư mục Debug của chương trình.
a) Biểu diễn các sự kiện...........................................................................................

Danh sách các sự kiện là một mảng một chiều với mỗi phần tử của nó là một đối tượng sự kiện. Danh sách này được dùng để duyệt qua các sự kiện được cung cấp bởi người dùng từ đó có được câu trả lời là: liệu có hay không luật nào đó trong tập cơ sở luật được khởi động và áp dụng.

Cụ thể trong chương trình danh sách sự kiện được biểu diễn là một lớp gồm có:

  • Các biến thành viên: o private int soSuKien;// số các sự kiện trong danh sách o private SuKien[] dsSuKien;

// mảng môt chiều lưu trữ danh sách các sự kiện

  • Các thuộc tính và phương thức: (Xin xem chi tiết trong class DanhSachSuKien trong chương trình Demo kèm theo)
c) Biểu diễn danh sách các sự kiện.........................................................................
  • Việc hỏi sẽ dừng trong 2 trường hợp: o Xác nhận được người dùng có “số” như thế nào đó bằng cách sử dụng luật nào đó trong cớ sở luật đã có. o Đã duyệt qua tất cả các sự kiện hoặc các luật mà không có luật nào được áp dụng (chưa có luật xây dựng cho danh sách sự kiện mà người dùng cung cấp). Cụ thể cách giải quyết của nhóm là:
  • Sử dụng tư tưởng của thuật toán suy diễn tiến để suy luận logic tại mỗi bước.
  • Cụ thể là coi mỗi lần “chuyên gia” hỏi và “người dùng” trả lời là một bước lặp của vòng While (điều kiện dừng chưa thỏa).
  • Khi đó thuật toán cụ thể sẽ như sau: Sử dụng 3 danh sách là: dsLuatDaHoi (danh sách các luật đã được chuyên gia hỏi rồi) và dsLuatCoTheHoi (danh sách các luật còn có thể hỏi, chưa bị phủ định bởi người dùng), dsLuatChuaHoi (danh sách các luật chưa được hỏi tới). Thuật toán gồm 3 bước cụ thể như sau:

Bước 1: Khởi tạo Khởi tạo danh sách sự kiện ban đầu sẽ là danh sách mà tất cả các sự kiện đều có giá trị là False (sai) (người dùng không có nhận xét nào về “số” của mình).

Load danh sách luật từ cơ sở tri thức. dsLuatDaHoi = {rỗng}, dsLuatCoTheHoi = dsLuatChuaHoi = {danh sách luật có trong cơ sở tri thức}

Bước 2: Thu thập giá trị sự kiện và suy luận Hỏi người dùng về một sự kiện nào đó theo một nguyên tắc nào đó. Nếu sự kiện được trả lời là True (Đúng):