ỨNG DỤNG MODUS PONENS CỦA ĐẠI SỐ GIA TỬ TRONG LẬP LUẬN XẤP XỈ BIẾN NGÔN NGỮ ĐỖ QUANG THƠ Bộ môn Khoa học máy tính Khoa Công nghệ thông tin Trường Đại học Giao thông Vận tải Tóm tắt: Nội dung chính của báo cáo đó là trình bày việc mở rộng modus ponens trong việc lập luận xấp xỉ các biến ngôn ngữ trên cơ sở tri thức được biểu diễn dưới dạng luật If then với cấp độ đúng (true - degree) và cấp độ tin cậy (certain-degree) dựa trên cơ sở đại số gia tử. Summary: In this paper, we introduce about expending modus ponens on knowledge in approximate reasoning base which present by If then rules with true -degree and certain- degree based on hedge algebra I. MỞ ĐẦU Xét cơ sở tri thức bao gồm các câu gồm hai phần cơ bản: phần rõ ràng và phần mơ hồ được biểu diễn dưới dạng các luật If then. khi đó cơ sở tri thức của ta bao gồm các luật có dạng như sau: If "Nam is more young" and "Nam is a very good student" then "Nam is quite a good candidate". CNTT- CB Ở đây các sự kiện "X is hA" (với h là các từ nhấn như more, very ) có thể viết lại là: "X (is h) A" hay h là cấp độ đúng (true degree) của câu "X is A". Nói cách khác, câu "X is hA" is true Ù "X is A" is h true. Ở đây h true thể hiện cấp độ đúng của câu "X is A". Chẳng hạn "Nam is a very good student" có thể viết lại là: "(Nam is a good student) is very true", hay “Nam is old” được viết lại "(Nam is old) is true". Các câu phức tạp hơn như: "It is quite likely that the snow is almost white" có thể biểu diễn ở dạng "(The snow is white) is almost true) is quite true". Trong bài này, một câu S chứa thông tin mơ hồ được tách biệt ra bởi một trạng từ α và một mệnh đề P, ở đây α diễn tả cấp độ câu S thỏa mãn tính chất P là α, chúng ta sẽ gọi α là cấp độ đúng (true degree) của câu S. Bên cạnh đó với một câu S, chúng ta quan tâm đến mức độ tin cậy hay còn gọi là độ chắc chắn của ta về câu S đó. Trong bài này sẽ ký hiệu σ là cấp độ thể hiện sự tin cậy - chắc chắn (certain degree) của câu S. Ví dụ: Trong câu "(The snow is white) is almost true) is quite true" trên thì P="The snow is white", α="almost" còn σ="quite". Ta biểu diễn các câu trên ở dạng S(x,u) với x là biến còn u là khái niệm mơ hồ và một khẳng định A=(S(x,u),t) với t thể hiện cấp độ đúng của câu S. Đây là cách biểu diễn câu khẳng định, ở đây câu S hiểu theo nghĩa trên sẽ là một khẳng định S=(S(x,u),σ true) với x là biến còn u là khái niệm mơ hồ, còn σ true chính là t trong cách biểu diễn trên. Ví dụ: Với câu S="Lan học rất chăm chỉ là có thể đúng" với cách biểu diễn S(x,u) sẽ là S(học(Lan, rất chăm chỉ), có thể đúng). Còn với cách biểu diễn trong bài này sẽ là S(học(Lan, chăm chỉ), rất đúng, có thể đúng). ở đây α="rất đúng" còn σ ="có thể đúng". CNTT-CB Như vậy cấp độ ngữ nghĩa t theo cách biểu diễn trên tương ứng chính là true degree "α true" trong cách biểu diễn của bài này. Cách biểu diễn của chúng ta tách biệt được phần rõ ràng và phần mơ hồ của câu, bên cạnh đó thể hiện được độ tin cậy (certain degree) của một câu. Ví dụ với câu "Lan học rất chăm chỉ là có thể đúng" nói trên thì phần rõ ràng là: "Lan học chăm chỉ" và phần mơ hồ là: "rất chăm chỉ" nói cách khác là "Lan học chăm chỉ là rất đúng" thì phần rất đúng là mơ hồ, còn câu phát biểu "(Lan học chăm chỉ là rất đúng) là có thể đúng” thì “có thể đúng” thể hiện độ chắc chắn của phát biểu này. Các cấp độ đúng αtrue và cấp độ tin cậy σtrue nói trên được xét trên đại số gia tử của biến chân lý true AX = (X, G, LH, ≤) với G = {True, False}, LH là dàn phân phối sinh bởi các gia tử. Như đã biết AX là một dàn đầy đủ, nên có thể định nghĩa các phép và (∧ - cận trên), hoặc (∨ - cận dưới) giữa hai phần tử bất kỳ của AX, hơn nữa ta bổ sung các phần tử kí hiệu bởi I, O, W được định nghĩa như sau: I > x > W > y > O với mọi x ∈ LH(True), y ∈ LH(False) và hI = I, hO = O, hW = W với mọi h ∈ LH. Các phần tử I, O, W có thể được hiểu như các giá trị ngôn ngữ tương ứng là: completely true, completely false và unknown. Từ đó không mất tính tổng quát có thể giả thiết rằng AX được sinh bởi tập các phần tử sinh G = {I, true, W, false, O}. Các qui tắc lập luận của chúng ta trong bài này được phân chia ra các 9 trường hợp có thể có khi vận dụng modus ponens. Qua các trường hợp được phân chia trong phần sau, chúng ta sẽ thấy rằng các qui tắc lập luận sử dụng trong bài này tuân theo bản chất lập luận dựa trên khoảng cách và tính sắp thứ tự của đại số gia tử. Trong các trường hợp 3 và 4, chúng ta sử dụng hàm modus ponens tổng quát như trong logic mờ, nhưng cách tính toán của chúng ta bỏ qua được các bước xây dựng hàm thuộc, khử mờ của logic mờ, nhưng cho kết quả hợp lý. Giả sử đã biết {A is α true and (A Æ B) is β true} lúc đó có kết luận gì về B? Hoặc đã biết {(A Æ B)is βtrue and ¬B is γ true}, có kết luận về A? Trường hợp đầu là modus ponens, còn trường hợp sau chính là modus tollens mở rộng cho lập luận xấp xỉ. Trong bài này chúng ta tập trung quan tâm đến modus ponens. Để lập luận trên các luật If then một qui tắc suy diễn thường được sử dụng đó là modus ponens. Với cơ sở tri thức có dạng trên qui tắc này sẽ là: If A then B is true; If A is true B is true Trong bài này, phần sau chúng ta sẽ mở rộng qui tắc trên trong một số trường hợp mà các mệnh đề A, B trong các luật được hiểu là có các cấp độ đúng và cấp độ tin cậy khác nhau trên đại số gia tử AX vừa nói trên. II. LẬP LUẬN XẤP XỈ TRÊN CƠ SỞ ĐẠI SỐ GIA TỬ Một câu hỏi thường được đặt ra trong lập luận xấp xỉ là: Để cho tiện ký hiệu chúng ta sẽ viết αA thay cho "A is α True", còn nếu viết A được hiểu là "A is true" và σ(αA) được hiểu "A is αTrue" với cấp độ chắc chắn (certain degree) là σTrue. Như vậy khi viết A thì hiểu true degree và certain degree của câu A đều là True. Ví dụ: Với câu "The student is more intelligent is very true" có thể viết thành "(((The student is intelligent) is more true) is very true)", lúc này A="The sudent is intelligent", α="more" và σ="very". Trước hết ta thấy rằng giữa true degree và certain degree có thể chuyển đổi như sau: σ(αA) Ù ασ(A) Ù ασA Ví dụ: Câu "(Lan rất chăm chỉ) là có thể đúng" được viết lại là: "((Lan chăm chỉ) rất đúng) là có thể đúng" Ù "((Lan chăm chỉ) đúng) là rất có thể đúng" Ù "((Lan chăm chỉ) rất có thể đúng) là đúng". Câu "(Quả cà chua đỏ) rất đúng) là ít đúng" Ù "((Quả cà chua đỏ), đúng) là rất đúng" Ù "((Quả cà chua đỏ), rất ít đúng) là đúng). Với quan niệm trên thì cơ sở tri thức của chúng ta sẽ bao gồm các luật If then có dạng như sau: CNTT- CB [If [[X is αA] is βtrue] then [[Y is α'B] is β'true]] is σtrue. Ở đây σ là certain degree của luật, còn β' chính là true degree của luật. Dưới đây chúng ta sẽ xem xét các trường hợp mở rộng của modus ponens cho lập luận xấp xỉ trên cơ sở tri thức có dạng trên. Chúng ta sẽ ký hiệu modus ponens ở dạng: A Æ B B A ′ ′ Vấn đề đặt ra là với các trường hợp khác nhau của A, B, A' hãy tính true degree và certain degree của B'. Ta có các trường hợp sau: Trường hợp 1: A Æ B B A Đây chính là trường hợp modus ponens thông thường. Trường hợp 2: A Æ B B A α α Khi giả thiết A và kết luận B của luật là True và nếu ta có đầu vào là αA thì đầu ra là αB, tức ta gán cấp độ đúng của đầu vào cho đầu ra. Trường hợp 3: A Æ θB B A η α Với η được tính như sau: ηTrue = αTrue ∩ ϕ(True, θTrue). Ở đây ∩, ϕ tương ứng là toán tử meet và toán tử giả bù tương đối trên đại số gia tử AX. Cách tính η ở trên dựa trên ý tưởng của modus ponens tổng quát (generalized modus ponens - GMP) trong logic mờ. Với cơ sở RH đại số gia tử AX nói trên, chúng ta có đầy đủ công cụ để tính toán GMP, nhưng ở đây chúng ta không phải tính toán thông qua hàm thuộc. Hơn nữa lập luận của chúng ta cũng rất tự nhiên trên ngôn ngữ như cách lập luận thông thường của con người. Như vậy, khi giả thiết A của luật là không mờ và kết luận B của luật là θ true, còn đầu vào là A is α true, khi đó cấp độ đúng của đầu ra được tính toán theo công thức trên và ta thấy chúng là hoàn toàn hợp lý trong thực tiễn. Để làm rõ hơn cách tính kết luận ηB, ta chứng minh mệnh đề dưới đây. Mệnh đề 1 Toán tử M(x, y)=x∩y với ∀x,y∈ AX thỏa mãn các tính chất của một hàm modus ponens tổng quát. Tức là: a. M(0,I ) = M(I ,O) = M(O,O) =O và M(I,I)= I. b. M(x,y) không tăng theo x và theo y. c. M(x,ϕ(x,y)≤y; M(I,y)=y và ϕ(I,y)=y. Chứng minh: a. và b. là hiển nhiên theo định nghĩa toán tử meet ∩ trong AX. Hơn nữa, ta có (x ∩ ϕ(x,y)) ≤ y và ϕ(I,y)=y với mọi x, y∈AX. Còn I∩y=y là dễ thấy, nên c) được chứng minh. Mệnh đề chứng minh xong. Trường hợp 4: A Æ θB )b( )A( λσ βσ Với λ được tính theo công thức sau: λTrue = βTrue∩ϕ(True,θTrue). Tóm lại, khi giả thiết A của luật là true và kết luận B là θ true, còn đầu vào là (A is β true) is σ true. Khi đó ta gán certain degree σTrue cho đầu ra, còn true degree λTrue của đầu ra được tính theo công thức tương tự trường hợp 3. CNTT-CB Trường hợp 5: μA Æ νB )B( )A( νσ μσ Ví dụ: Nếu cà chua khá đỏ thì rất ngon Nếu cà chua khá đỏ là có thể đúng. Khi đó theo qui tắc trên dễ thấy rằng kết luận thu được sẽ là: Cà chua rất ngon là có thể đúng. Khi giả thiết A của luật là μ true và kết luận B là ν true, còn đầu vào là (A is μ true) is σ true - cấp độ đúng của giả thiết và đầu vào là như nhau. Khi đó ta gán certain degree σTrue cho đầu ra và gán true degree νTrue của kết luận B cho đầu ra. Lưu ý rằng, khi cấp độ đúng của giả thiết và đầu vào là khác nhau ta không thể suy luận được gì trong trường hợp này. Trường hợp 6: μA Æ νB σ(πA) với π ≠ μ Không thể suy diễn được gì thêm. Ví dụ: Nếu cà chua khá đỏ thì rất ngon Nếu cà chua rất đỏ là đúng. μ="Khá"; π="Rất", trong thực tiễn ta thấy ở đây không thể suy diễn được gì thêm. Từ trường hợp 2 và trường hợp 4 ta có: Trường hợp 7: A Æ B σ(μA) σ(μB) Trường hợp 8: σ(AÆ B) A σ(B) Trường hợp 9: σ(α(AÆ B)) αA σ(αB) Tóm lại ta có: Nếu kết luận B của luật là true thì gán true degree và certain degree của đầu vào cho đầu ra. Ngược lại, Nếu giả thiết A của luật là true thì tính toán các cấp độ true degree và certain degree cho đầu ra theo các công thức trong các trường hợp 2, 3, 4. Ngược lại, Nếu true degree của giả thiết A bằng true degree của đầu vào thì gán certain degree σ của đầu vào cho đầu ra và gán true degree ν của kết luận B cho đầu ra. Ngược lại, không thể suy diễn gì thêm. Hơn nữa cũng lưu ý rằng khi lập luận xấp xỉ trên cơ sở tri thức bao gồm các câu như đã xét ở các phần trên nếu xảy ra trường hợp đụng độ khi lựa chọn luật để suy diễn - luật cháy (fire rule), trong trường hợp này một heuristic để lựa chọn luật là: lựa chọn luật cháy là luật có certain degree lớn nhất, khi có nhiều luật như thế ta chọn luật có true degree lớn nhất. Ví dụ 1: Giả sử ta có các luật sau: R1: If A then C R2: If B then C Cùng các sự kiện sau: αA và βB với α="Khá" và β="Rất". Áp dụng heuristic ta thấy luật R2 sẽ được chọn để lập luận và thu được kết luận là: βC. CNTT- CB Ví dụ 2: Giả sử ta có các luật sau: R1: (If A then B is very true) is very true R2: (If A then C is more true) is very true Cùng sự kiện αA, khi đó cả 2 luật R1, R2 đều có thể chọn để cháy, tuy vậy áp dụng heuristic trên, ta thấy luật R1 được chọn và ta thu được kết luận là: αB. III. KẾT LUẬN Trong các phần trên chúng ta đã mở rộng và tính toán cho các trường hợp của modus ponens. Các mở rộng trên là cơ sở vững chắc cho việc lập luận xấp xỉ trên biến ngôn ngữ. Hơn nữa cách biểu diễn câu của chúng ta làm tách biệt được hai phần cơ bản của tri thức con người là: phần rõ ràng và phần mơ hồ. Đồng thời thể hiện được độ tin cậy của câu, điều này thường gặp khi lập luận trên cơ sở tri thức thu thập từ các chuyên gia trong các hệ chuyên gia. Bên cạnh đó cách kí hiệu σ(αA) tạo điều kiện dễ dàng khi cài đặt một mô tơ suy diễn trên cơ sở tri thức có dạng nói ở phần I. Cũng cần nói thêm với cơ sở là đại số gia tử chúng ta có thể định nghĩa các toán tử giả bù tương đối, qua đó xét toán tử M trong mệnh đề 1 thỏa mãn các tính chất của hàm modus ponens tổng quát, nhưng việc lập luận xấp xỉ ở trên của chúng ta không phải thông qua việc tính toán dựa vào hàm thuộc trong logic mờ mà lập luận trên biến ngôn ngữ như cách suy nghĩ thông thường của con người. Tài liệu tham khảo [1]. N.C Ho, T.D Khang, H.V Nam, N.H Chau, Hedge Algebras, Linguistic-Valued and Their Application to Fuzzy Reasoning, Inter. J. of Uncertainty, Fuzziness and Knowledge-Based System 7 (4) (1999) 347 - 361. [2]. Nguyễn Văn Long, Đại số gia tử mở rộng đầy đủ và cơ sở toán học về độ đo tính mờ vủa thông tin ngôn ngữ, Luận văn tiến sỹ Toán học, Đảm bảo toán học cho máy tính và hệ thống tính toán, Trường ĐHBK, Hà Nội ( 2004). [3]. Trần Thái Sơn. Lập luận xấp xỉ với các giá trị của biến ngôn ng ữ, Tạp chí Tin học và Điều khiển học, Tập 15, S.2 (1999) 6 - 10. [4]. L.A.ZADEH. The Cocept of a Linguistic Variable and its Application to Approximate Reasoning - I, Information sciences 8, 199 – 249 (1975). [5]. L.A.ZADEH. The Cocept of a Linguistic Variable and its Application to Approximate Reasoning - II, Information sciences 8, 301 – 357 (1975). [6]. L.A.ZADEH. The Cocept of a Linguistic Variable and its Application to Approximate Reasoning - III, Information sciences 9, 43 – 80 (1975)♦ . ỨNG DỤNG MODUS PONENS CỦA ĐẠI SỐ GIA TỬ TRONG LẬP LUẬN XẤP XỈ BIẾN NGÔN NGỮ ĐỖ QUANG THƠ Bộ môn Khoa học máy tính Khoa Công nghệ thông tin Trường Đại học Giao thông Vận. độ tin cậy khác nhau trên đại số gia tử AX vừa nói trên. II. LẬP LUẬN XẤP XỈ TRÊN CƠ SỞ ĐẠI SỐ GIA TỬ Một câu hỏi thường được đặt ra trong lập luận xấp xỉ là: Để cho tiện ký hiệu chúng. phân chia trong phần sau, chúng ta sẽ thấy rằng các qui tắc lập luận sử dụng trong bài này tuân theo bản chất lập luận dựa trên khoảng cách và tính sắp thứ tự của đại số gia tử. Trong các