Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
91,77 KB
Nội dung
TRƯỜNG CÔNG NGHỆ THÔNG TIN KHOA KHOA HỌC MÁY TÍNH Lớp CHK8 - Chuyên Ngành KHMT ĐỒ ÁN MÔN HỌC BIỂU DIỄN TRI THỨC VÀ SUY LUẬN Đề tài: MẠNG TÍNH TOÁN Ging viên: PGS TS. Đỗ Văn Nhơn Học viên: Nguyễn Phương Thanh Diệu MSHV: CH1301085 TP HCM – 03/2014 CH1301085 – Nguyễn Phương Thanh Diệu Nội dung 2 CH1301085 – Nguyễn Phương Thanh Diệu I. TRI THỨC VÀ BIỂU DIỄN TRI THỨC 1. Khái niệm tri thức ° Tri thức không có được định nghĩa chính xác. ° Khái niệm: Tri thức (knowledge) là sự hiểu biết về một lĩnh vực của chủ đề. ° Lĩnh vực: miền chủ đề được chú trọng. ° Tri thức thuờng bao gồm các khái niệm, các loại sự kiện, các luật, Ví dụ: 1. Kiến thức về một lĩnh vực y học và khả năng chẩn đoán bệnh là tri thức. 2. Biết một tam giác có các yếu tố nào cùng với các công thức liên hệ giữa các yếu tố là tri thức. 3. Biết các dạng cấu trúc dữ liệu thường dùng trong lập trình cùng với các thuật toán xử lý cơ bản trên các cấu trúc là tri thức. 2. Khái niệm về biểu diễn tri thức ° Biểu diễn tri thức (Knowledge Representation) là sự diễn đạt và thể hiện của tri thức dưới những dạng thích hợp để có thể tổ chức một cơ sở tri thức của hệ thống. ° Tại sao phải biểu diễn tri thức?Biểu diễn tri thức giúp có thể tổ chức và cài đặt một cơ sở tri thức cho các hệ chuyên gia, các hệ cở sở tri thức và các hệ giải bài toán dựa trên tri thức. Công cụ cho việc biểu diễn tri thức ° Các cấu trúc dữ liệu cơ bản: dãy, danh sách, tập hợp, mẫu, ° Các cấu trúc dữ liệu trừu tượng: ngăn xếp, hàng đợi. ° Các mô hình toán học: đồ thị, cây. ° Các mô hình đối tượng. ° Các ngôn ngữ đặc tả tri thức. Vídụ: Kiến thức về một tam giác cần thiết cho việc giải bài toán tam giác có thể được biểu diễn gồm: ° Một tập hợp các biến thực, mỗi biến đại diện cho một yếu tố của tam giác. 3 CH1301085 – Nguyễn Phương Thanh Diệu ° Một tập hợp các công thức liên hệ tính toán trên các yếu tố của tam giác. 3. Một số mô hình biểu diễn tri thức cơ bản: 3.1. Logic hình thức ° Sử dụng các biểu thức logic hình thức trong một hệ thống logic để diễn đạt các sự kiện và các luật trong cơ sở tri thức. ° Phép tính logic vị từ cấp 1 được sử dụng phổ biến nhất và có cả một ngôn ngữ lập trình hỗ trợ cho phương pháp này. Đó là ngôn ngữ lập trình PROLOG. ° Trong ngôn ngữ PROLOG, chỉ cần khai báo các sự kiện và các luật. Hệ thống sẽ thức hiện giải quyết vấn đề được yêu cầu dựa trên tri thức được khai báo. 3.2. Hệ luật dẫn ° Mỗi luật dẫn được phát biểu dưới dạng: if <giả thiết> then <kết luận> ° Mô hình: Một cách hình thức, hệ luật dẫn gồm 1) Tập ký hiệu đại diện cho các sự kiện. 2) tập luật dẫn trong đó <giả thiết> và <kết luận> là các tập hợp sự kiện Nhận xét: Mô hình hệ luật dẫn trên khó áp dụng trực tiếp vì quan niệm sự kiện khá đơn giản. 3.3. Mạng ngữ nghĩa ° Mạng ngữ nghĩa (semantic network) có dạng một đồ thị gồm các nút và các cung, trong đó - Các nút thể hiện các khái niệm, các đối tượng. - Các cung thể hiện các quan hệ giữa các đối tượng. ° Dựa trên mạng ngữ nghĩa ta nhận biết tri thức một cách trực quan giúp thiết kế các xử lý như: thêm/bớt các khái niệm hay các đối tượng, tìm kiếm thông tin. ° Nhận xét: Mô hình khá trừu tượng và khái quát, trong áp dụng phải phát triển các mô hình tri thức cụ thể hơn. 3.4. Các khung(frame) ° Các khung (frame) thể hiện các khái niệm dưới dạng cấu trúc mẫu tin và có hình thức như một bảng mẫu. 4 CH1301085 – Nguyễn Phương Thanh Diệu ° Khung cơ bản: gồm các thành phần cơ bản sau • Tên đối tượng (loại khung). • Các thuộc tính. • Giá trị của các thuộc tính. ° Khung lớp: thể hiện các tính chất tổng quát của một lớp các đối tượng, với những quan hệ kế thừa và cấu trúc phân cấp. I. Mạng tính toán: Vấn đề bài toán: Giả sử chúng ta đang quan tâm đến một số yếu tố trong một tam giác, chẳng hạn : 3 cạnh a, b, c; 3 góc tương ứng với 3 cạnh : α, β, γ; 3 đường cao tương ứng : ha, hb, hc; diện tích S của tam giác; nửa chu vi p của tam giác; bán kính đường tròn nội tiếp r của tam giác. Giữa 12 yếu tố trên có các công thức thể hiện những mối quan hệ giúp ta có thể giải quyết được một số vấn đề tính toán đặt ra như: Tính một yếu tố từ một số yếu tố được cho trước Chẳng hạn, tính S khi biết a, b và p. Giải quyết vấn đề: Trong tam giác chúng ta có thể kể ra một số quan hệ dưới dạng công thức sau đây: 1. Tập các biến: - a, b, c: 3 cạnh tam giác - A, B, C: 3 góc đối diện với 3 cạnh tương ứng trong tam giác. - ha, hb, hc: 3 đường cao tương ứng 3 cạnh - ma, mb, mc: 3 đường trung tuyến tương ứng 3 cạnh tam giác. - pa, pb, pc: 3 đường phân giác trong tương ứng với 3 cạnh tam giác - S: diện tích tam giác. 5 CH1301085 – Nguyễn Phương Thanh Diệu - p : nửa chu vi tam giác - R: bán kính đường tròn ngoại tiếp tam giác. - r: bán kính đường tròn nội tiếp tam giác. - ra, rb, rc: các bán kính đường tròn bàng tiếp tam giác. 2. Các hệ thức cơ bản giữa các yếu tố tam giác 1. Liên hệ giữa 3 góc: - f1: A + B + C = pi (radian). 2. Định lý Cosin: - f2: a 2 = b 2 + c 2 – 2.b.c.CosA - f3: b 2 = a 2 + c 2 – 2.a.c.CosB - f4: c 2 = a 2 + b 2 – 2.a.b.CosC 3. Định lý Sin: - f5: 4. Liên hệ giữa nửa chu vi và 3 cạnh - f6: 2.p = a + b + c 5. Các công thức tính diện tích - f7: S = . a. ha; S = .b.hb; S = .c.hc - f8: S = b.c.sinA; S = .c.a.sinB; S = .a.b.sinC - f9: S = (a.b.c)/4R - f10: S = p.r <=> 2S = (a + b + c).r - f11: S = - f12: S = r a .(p-a); S = r b .(p – b); S = r c .(p – c) 6 CH1301085 – Nguyễn Phương Thanh Diệu 6. Các công thức tính đường cao theo cạnh và góc - f13: h a = b.sinC = c.sinB - f14: h b = a.sinC = c.sinA - f15: h c = a.sinB = b.sinA 7. Các công thức tính các đường trung tuyến: - f16: 4.m a 2 = 2.(b 2 + c 2 ) – a 2 - f17: 4.m b 2 = 2.(a 2 + c 2 ) – b 2 - f18: 4.m c 2 = 2.(a 2 + b 2 ) – c 2 8. Các công thức tính đường phân giác trong - f19: - f20: - f21: 1. Các quan hệ: Cho M = {x 1 ,x 2 , ,x m } là một tập hợp các biến có thể lấy giá trị trong các miền xác định tương ứng D 1, D 2 , ,D m . Đối với mỗi quan hệ R ⊆ D 1 xD 2 x xD m trên các tập hợp D 1, D 2 , ,D m ta nói rằng quan hệ nầy liên kết các biến x 1 ,x 2 , ,x m , và ký hiệu là R(x 1 ,x 2 , ,x m ) hay vắn tắt là R(x) (ký hiệu x dùng để chỉ bộ biến < x 1 ,x 2 , ,x m >). Ta có thể thấy rằng quan hệ R(x) có thể được biểu diễn bởi một ánh xạ f R,u,v với u ∪ v = x, và ta viết : f R,u,v : u → v, hay vắn tắt là f : u → v. Đối với các quan hệ dùng cho việc tính toán, cách ký hiệu trên bao hàm ý nghĩa như là một hàm: ta có thể tính được giá trị của các biến thuộc v khi biết được giá trị của các biến thuộc u. Trong phần sau ta xét các quan hệ xác định bởi các hàm có dạng f : u → v, trong đó u ∩ v = ∅ (tập rỗng). Đặc biệt là các quan hệ đối xứng có hạng (rank) bằng một số nguyên dương k. Đó là các quan hệ mà ta có thể tính được k biến bất kỳ từ m-k biến kia (ở đây x là bộ gồm m biến < x 1 ,x 2 , ,x m >). Ngoài ra, trong trường hợp cần nói rõ ta viết u(f) thay cho u, v(f) thay cho v. Đối với các quan hệ không phải là đối xứng có hạng k, không làm mất tính tổng quát, ta có thể giả sử quan hệ xác định duy nhất một hàm f với 7 X1 Xm-k Xm-k+1 Xm A B C CH1301085 – Nguyễn Phương Thanh Diệu tập biến vào là u(f) và tập biến ra là v(f); ta gọi loại quan hệ nầy là quan hệ không đối xứng xác định một hàm, hay gọi vắn tắt là quan hệ không đối xứng. Ta có thể vẽ hình biểu diễn cho các quan hệ đối xứng và quan hệ không đối xứng như sau: Nhận xét: 1. Một quan hệ không đối xứng có hạng k có thể được viết thành k quan hệ không đối xứng có hạng 1. 2. Nếu biểu diễn một quan hệ đối xứng có hạng k thành các quan hệ đối xứng có hạng 1 thì số quan hệ có hạng. Ví dụ: Quan hệ f giữa 3 góc A,B,C trong tam giác ABC cho bởi hệ thức: A+B+C= 180 độ Quan hệ f giữa 3 góc trong một tam giác trên đây là một quan hệ đối xứng có hạng 1. Ví dụ: quan hệ f giữa 3 góc A, B, C trong tam giác ABC cho bởi hệ thức: A+B+C = 180 (đơn vị: độ) 8 X m-k+1 X1 X2 Quan hệ đối xứng có hạng Xm Xm Quan hệ không đối xứng có hạng k CH1301085 – Nguyễn Phương Thanh Diệu Định nghĩa 1: Mạng tính toán với các giá trị đơn là một cặp (M, F), trong đó - M = {x1, x2 … xn}: tập các biến giá trị đơn (dữ liệu không có cấu trúc) - F = {f1, f2 … fn}: tập các quan hệ tính toán trên các biến của tập M. Mỗi quan hệ tính toán f ∈ F có dạng như sau: i. Một phương trình trên các biến của M ii. Luật suy diễn f: u(f) v(f) và có công thức tương ứng để tính toán v(f) từ u(f). Có thể định nghĩa tập M(f) = u(f) ∪ v(f). * Trong một số ứng dụng phương trình được nói đến ở trên cũng có thể là các luật suy diễn. Ví dụ: Mạng tính toán cho một hình chữ nhật. - a, b: là 2 cạnh của hình chữ nhật - d: là đường chéo hình chữ nhật - S: là diện tích - p: là chu vi hình chữ nhật M= {a, b, d, S, p}; F = {f1: S=a*b, f2:2*(a+b), f3: d2=a2+b2} Cho một mạng tính toán (M,F), M là tập các biến và F là tập các quan hệ. Giả sử có một tập biến A ⊆ M đã được xác định và B là một tập biến bất kỳ trong M. Các vấn đề đặt ra là: 1. Có thể xác định được tập B từ tập A nhờ các quan hệ trong F hay không? Nói cách khác, ta có thể tính được giá trị của các biến thuộc B với giả thiết đã biết giá trị của các biến thuộc A hay không? 2. Nếu có thể xác định được B từ A thì quá trình tính toán giá trị của các biến thuộc B như thế nào? 3. Trong trường hợp không thể xác định được B, thì cần cho thêm điều kiện gì để có thể xác định được B. 9 CH1301085 – Nguyễn Phương Thanh Diệu Bài toán xác định B từ A trên mạng tính toán (M,F) được viết dưới dạng: A → B, trong đó A được gọi là giả thiết, B được gọi là mục tiêu tính toán của bài toán. Định nghĩa 2.1: Bài toán A → B được gọi là giải được khi có thể tính toán được giá trị các biến thuộc B xuất phát từ giả thiết A. Ta nói rằng một dãy các quan hệ {f 1 , f 2 , , f k } ⊆ F là một lời giải của bài toán A → B nếu như ta lần lượt áp dụng các quan hệ f i (i=1, ,k) xuất phát từ giả thiết A thì sẽ tính được các biến thuộc B. Lời giải {f 1 , f 2 , , f k } được gọi là lời giải tốt nếu không thể bỏ bớt một số bước tính toán trong quá trình giải, tức là không thể bỏ bớt một số quan hệ trong lời giải. Việc tìm lời giải cho bài toán là việc tìm ra một dãy quan hệ để có thể áp dụng suy ra được B từ A. Điều nầy cũng có nghĩa là tìm ra được một quá trình tính toán để giải bài toán. Định nghĩa 2.2 : Cho D = {f 1 , f 2 , , f k } là một dãy quan hệ của mạng tính toán (M,F), A là một tập con của M. Ta nói dãy quan hệ D là áp dụng được trên tập A khi và chỉ khi ta có thể lần lượt áp dụng được các quan hệ f 1 , f 2 , , f k xuất phát từ giả thiết A. Nhận xét : Trong định nghĩa trên, nếu đặt : A 0 = A, A 1 = A 0 ∪ M(f 1 ), . . . , A k = A k- 1 ∪ M(f k ), và ký hiệu A k là D(A), thì ta có D là một lời giải của bài toán A → D(A). Trong trường hợp D là một dãy quan hệ bất kỳ (không nhất thiết là áp dụng được trên A), ta vẫn ký hiệu D(A) là tập biến đạt được khi lần lượt áp dụng các quan hệ trong dãy D (nếu được). Chúng ta có thể nói rằng D(A) là sự mở rộng của tập A nhờ áp dụng dãy quan hệ D. Giải quyết vấn đề: 2. Tính giải được của bài toán : Trong mục nầy chúng ta nêu lên một khái niệm có liên quan đến tính giải được của vấn đề trên một mạng tính toán : bao đóng của một tập hợp biến trên một mạng tính toán. Định nghĩa 4.1: Cho mạng tính toán (M,F), và A là một tập con của M. Ta có thể thấy rằng có duy nhất một tập hợp B lớn nhất ⊆ M sao cho bài toán A → B là giải được, và tập hợp B nầy 10 [...]... là thuật toán tìm một lời giải cho bài toán A → B trên mạng tính toán (M,F) Thuật toán 4.2 Tìm một lời giải cho bài toán A → B : Nhập : Mạng tính toán (M,F), tập giả thiết A ⊆ M, tập biến cần tính B ⊆ M Xuất : lời giải cho bài toán A → B Thuật toán : 1 Solution ← empty; // Solution là dãy các quan hệ sẽ áp dụng 2 if B ⊆ A then begin Solution_found ← true; // biến Solution_found = true khi bài toán là... bước tính toán thừa, chẳng hạn là f5 Thuật toán 3.3 sẽ lọc ra từ lời giải trên một lời giải tốt là {f1, f2, f9}: {a, β, γ} {a, β, γ, α} {a, β, γ, α, b} {a, β, γ, α, b, S} Theo lời giải nầy, ta có quá trình tính toán như sau : bước 1: tính α (áp dụng f1) bước 2: tính b (áp dụng f2) bước 3: tính S (áp dụng f9) Quá trình tính toán (gồm 3 bước) nầy có thể được diễn đạt một cách rõ ràng trên sơ đồ mạng. .. giải : Xét bài toán A → B trên mạng tính toán (M,F) Trong mục nầy ta nêu lên một cách xây dựng quá trình giải từ một lời giải đã biết Đối với một lời giải, rất có khả năng một quan hệ nào đó dẫn tới việc tính toán một số biến thừa, tức là các biến tính ra mà không có sử dụng cho các bước tính phía sau Do đó, chúng ta cần xem xét quá trình áp dụng các quan hệ trong lời giải và chỉ tính toán các biến... Ký hiệu bao đóng của A là chúng ta có định lý sau đây: , Định lý 4.1: Trên một mạng tính toán (M,F), bài toán A → B là giải được khi và chỉ khi B ⊆ Từ định lý nầy, ta có thể kiểm tra tính giải được của bài toán A → B bằng cách tính bao đóng của tập A rồi xét xem B có bao hàm trong hay không Định lý 4.2 Cho một mạng tính toán (M,F), A, B là hai tập con của M Ta có các điều sau đây là tương đương: (1)... lời giải của bài toán A → B với mọi i=m, , 2, 1 (3) Nếu S’i là một dãy con thật sự của Si thì Di-1 ∪ S’i không phải là một lời giải của bài toán A → B với mọi i (4) S1 là một lời giải tốt của bài toán A → B Thuật toán 4.3 Tìm một lời giải tốt từ một lời giải đã biết Nhập : Mạng tính toán (M,F), lời giải {f1, f2, , fm} của bài toán A→ B Xuất : lời giải tốt cho bài toán A → B Thuật toán : 1 D ← {f1,... giải tốt Trong thuật toán 3.3 có sử dụng việc kiểm tra một dãy quan hệ có phải là lời giải hay không Việc kiểm tra nầy có thể được thực hiện nhờ thuật toán sau đây: Thuật toán kiểm tra lời giải cho bài toán : Nhập : Mạng tính toán (M,F), bài toán A→ B, dãy các quan hệ {f1, f2, , fm} Xuất : thông tin cho biết {f1, f2, , fm} có phải là lời giải của bài toán A→ B hay không Thuật toán: 15 CH1301085 – Nguyễn... những vấn đề quan trọng Về mặt tri thức người ta đã biết được nhiều chất và 18 CH1301085 – Nguyễn Phương Thanh Diệu các phản ứng hóa học có thể chuyển hóa từ một số chất nầy thành các chất khác Tạm thời bỏ qua một số điều kiện phản ứng, ta có thể xem tri thức đó như một mạng tính toán mà mỗi phản ứng là một quan hệ của mạng Ví dụ như phản ứng điều chế Clo từ axít Clohidric và đioxit mangan : MnO2 + HCl... bài toán A → B trên mạng tính toán (M,F) Mệnh đề 4.2 : Dãy quan hệ D là một lời giải của bài toán A → B khi và chỉ khi D áp dụng được trên A và D(A) ⊇ B Do mệnh đề trên, để tìm một lời giải ta có thể làm như sau: Xuất phát từ giả thiết A, ta thử áp dụng các quan hệ để mở rộng dần tập các biến có giá trị được xác định; và 12 CH1301085 – Nguyễn Phương Thanh Diệu quá trình nầy tạo ra một sự lan truyền tính. .. giải và trên cơ sở đó có thể xây dựng quá trình tính toán các biến để giải quyết bài toán Định lý 3.4 Cho {f1, f2, , fm} là một lời giải tốt cho bài toán A → B trên một mạng tính toán (M,F) Đặt : A0 = A, Ai = {f1, f2, , fi}(A), với mọi i=1, ,m Khi đó có một dãy {B0, B1, , Bm-1, Bm}, thỏa các điều kiện sau đây: (1) Bm = B (2) Bi ⊆ Ai , với mọi i=0,1, ,m (3) Với mọi i=1, ,m, {fi} là lời giải của bài toán. .. Thuật toán 4.1 Tìm bao đóng của tập A ⊆ M : Nhập :Mạng tính toán (M,F), A ⊆ M Xuất : Thuật toán : 1 B ← A; 2 Repeat B1 ← B; for f ∈ F do if ( f đối xứng and Card (M(f) \ B) ≤ r(f) ) or ( f không đối xứng and M(f) \ B ⊆ v(f) ) then begin B ← B ∪ M(f); F ← F \ {f}; // loại f khỏi lần xem xét sau end; Until 3 B = B1; ← B; Lời giải của bài toán : Ở trên ta đã nêu lên cách xác định tính giải được của bài toán . Tại sao phải biểu diễn tri thức ?Biểu diễn tri thức giúp có thể tổ chức và cài đặt một cơ sở tri thức cho các hệ chuyên gia, các hệ cở sở tri thức và các hệ giải bài toán dựa trên tri thức. Công. Khái niệm về biểu diễn tri thức ° Biểu diễn tri thức (Knowledge Representation) là sự diễn đạt và thể hiện của tri thức dưới những dạng thích hợp để có thể tổ chức một cơ sở tri thức của hệ thống. °. dung 2 CH1301085 – Nguyễn Phương Thanh Diệu I. TRI THỨC VÀ BIỂU DIỄN TRI THỨC 1. Khái niệm tri thức ° Tri thức không có được định nghĩa chính xác. ° Khái niệm: Tri thức (knowledge) là sự hiểu biết về một