BÀI TẬP II A/ Phát biểu bài toán Cài đặt bài toán tam giác sử dụng hệ luật dẫn – Suy diễn tiến.. C/ Nhận xét - Suy diễn tiến là quá trình suy diễn bắt đầu từ tập sự kiện đã biết, rút ra
Trang 11/27/2013 TRÍ TUỆ NHÂN TẠO
Bài Tập II
Giảng viên: PGS.TS Đỗ Văn Nhơn Sinh viên: Lê Văn Thành Trung MSSV: 10520541
Trang 2BÀI TẬP II
A/ Phát biểu bài toán
Cài đặt bài toán tam giác sử dụng hệ luật dẫn – Suy diễn tiến
B/ Thuật giải
Input:
- Tập luật Rule = {r1, r2, , rm}
- GT, KL Output:
In ra các luật được sử dụng nếu GT -> KL Ngược lại, thông báo không
đủ điều kiện giải
Method:
B1:
TD = GT;
T = Loc (Rule, TD);
B2:
While (KL ⊄ TD) AND (T≠ ∅) Do
{
r = Get (T);
TD = TD ⋃ {q}; // r: left->q Rule = Rule \ {r};
T = Loc (Rule, TD);
}
If KL ⊆ TD THEN Return “True”
Else Return “False”
B3: Xoá bỏ luật dư thừa B4: Tính toán và in kết quả
Trang 3C/ Nhận xét
- Suy diễn tiến là quá trình suy diễn bắt đầu từ tập sự kiện đã biết, rút ra những sự kiện mới và cứ như vậy cho đến khi có được sự kiện cần chứng minh hoặc không có luật nào sinh ra các sự kiện mới ( tập sự kiện đúng là cực đại)
- Quá trình suy diễn tiến là quá trình xem xét các luật, với mỗi luật ta xét phần giả thuyết ở vế trái tới phần kết luận ở vế phải và khi mà tất cả các điều kiện của luật đều thoả mãn thì suy ra sự kiện trong phần kết luận
- Trong mỗi bước của thủ tục ta xét 1 luật trong tập luật So sánh mỗi điều kiện ở vế trái của tập luật với sự kiện trong cơ sở của sự kiện, nếu tất cả các điều kiện của luật được thoả mãn thì sự kiện trong phần kết luận được xem là sự kiện được suy
ra Nếu sự kiện này là sự kiện mới (không có trong bộ nhớ làm việc) thì nó được đưa vào bộ nhớ làm việc Quá trình trên cứ lặp lại cho đến khi nào không có luật nào sinh ra sự kiện mới
- Quá trình suy diễn tiến không định hướng tới giải quyết một vấn đề nào cả, không hướng tới tìm ra câu trả lời cho một câu hỏi nào cả Suy diễn tiến chỉ là quá trình suy ra các sự kiện mới từ các sự kiện có trong bộ nhớ làm việc
- Ưu điểm:
o Làm việc tốt khi bài toán có bản chất là đi thu thập thông tin rồi thấy điều cần suy diễn
o Suy diễn tiến là tiếp cận lý tưởng đối với các loại bài toán cần giải quyết các nhiệm vụ như điều hành, điều khiển hay lập kế hoạch …
o Cho ra khối lượng lớn các thông tin từ một số thông tin ban đầu Sinh ra nhiều thông tin mới
- Nhược điểm:
o Không cảm nhận được rằng chỉ cần một vài thông tin quan trọng Hệ thống hỏi các câu hỏi có thể hỏi mà không biết rằng chỉ một ít câu đã đi đến kết luận được
o Hệ thống có thể hỏi cá câu hỏi không liên quan Có thể các câu trả lời cũng không quan trọng nhưng làm người dùng lúng túng khi phải trả lời các câu chẳng dính dáng đến chủ đề
D/ Tổ chức lưu trữ trên tập tin data.txt
Các luật và công thức được lưu trữ như sau:
a, b, c, A, B, C, S, p, ha, hb, hc, r, R A,B => C
- - #180 A B A,C => B
- - #180 A C B,C => A
- - #180 B C a,b,c => p
Trang 4acos / - + * b b * c c * a a * #2 * b c a,b,c => B
acos / - + * a a * c c * b b * #2 * a c a,b,c => C
acos / - + * a a * b b * c c * #2 * a b
…
Trong đó:
o Dòng 1: cho biết các yếu tố
o Dòng 2: cho biết một luật VD: A,B => C Từ góc A và B suy ra được góc C
o Dòng 3: cho biết công thức kèm theo luật ở dòng 2 VD: Góc C = 180 – A –B
o Các dòng còn lại: Cứ trình tự 1 luật kèm với một công thức tính
E/ Giao diện và chạy thử
Trang 5G/ Tài liệu tham khảo
- Các tài liệu về Trí tuệ nhân tạo và Biểu diễn tri thức
- Kí pháp Ba Lan: http://vi.wikipedia.org/wiki/K%C3%AD_ph%C3%A1p_Ba_Lan
- Các công thức tính toán trong tam giác:
http://totoantaquangbuu.nice-board.com/t94-topic
- https://www.google.com