Suy diễn trong logic ngôn ngữ1

78 195 0
Suy diễn trong logic ngôn ngữ1

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI TRẦN NGỌC MINH - TRẦN NGỌC MINH CÔNG NGHỆ THÔNG TIN SUY DIỄN TRONG LOGIC NGÔN NGỮ LUẬN VĂN THẠC SĨ KHOA HỌC CÔNG NGHỆ THÔNG TIN 2009-2011 HÀ NỘI – NĂM 2012 Luận văn cao học Người thực hiện: Trần Ngọc Minh LỜI CAM ĐOAN Tôi xin cam đoan luận văn nghiên cứu thân Các nghiên cứu luận văn dựa tổng hợp lý thuyết hiểu biết thực tế mình, không chép từ luận văn khác Mọi thông tin trích dẫn tuân theo luật sở hữu trí tuệ, liệt kê rõ ràng tài liệu tham khảo Tôi xin chịu hoàn toàn trách nhiệm với nội dung viết luận văn Tác giả luận văn Trần Ngọc Minh Luận văn cao học Người thực hiện: Trần Ngọc Minh LỜI CẢM ƠN Lời muốn bày tỏ lòng biết ơn sâu sắc kính trọng tới TS Trần Đức Khánh – người tận tình bảo, hướng dẫn tạo điều kiện cho trình tìm hiểu học tập nghiên cứu đề tài Tôi xin chân thành cảm ơn Thầy, Cô Viện Công nghệ thông tin truyền thông, trường Đại học Bách Khoa Hà Nội tạo điều kiện cho học hỏi thông qua môn học hoàn thành khoá học Cuối xin bày tỏ lòng cảm ơn chân thành đến gia đình, người thân bạn bè đồng nghiệp khích lệ động viên hoàn thành luận văn này.! Tác giả Luận văn cao học Người thực hiện: Trần Ngọc Minh MỤC LỤC Trang Lời cam đoan Lời cảm ơn Mục lục Danh mục chữ viết tắt Danh mục hình vẽ Lời Mở đầu Chương 1: Logic mờ phương thức hợp giải mờ 10 1.1 Giới thiệu 10 1.2 Logic mờ 10 1.3 Hợp giải mờ cho mệnh đề logic 21 1.4 Tính đầy đủ hợp giải mờ 24 1.5 Cài đặt thuật toán hợp giải mờ 24 Chương 2: Đại số gia tử 29 2.1 Giới thiệu 29 2.2 Tập giá trị biến ngôn ngữ từ quan điểm đại số 30 2.3 Tiên đề đại số gia tử mịn hóa thuộc tính 35 2.4 Cấu trúc dàn đại số gia tử mịn hóa (RHA) 41 2.5 Đại số gia tử mịn hóa đối xứng 42 2.6 Cấu trúc đại số đại số gia tử mịn hóa hữu hạn 43 2.7 Kết luận 46 Chương 3: Logic ngôn ngữ 47 3.1 Cú pháp 47 3.2 Ngữ nghĩa 48 3.2.1 Đại số gia tử đối xứng 48 3.2.2 Thông dịch 51 3.2.3 Giá trị chân lí công thức 52 3.2.4 Đưa công thức dạng tuyển quy (CNF) 53 3.2.5 Thỏa được, mâu thuẫn, sai 53 Luận văn cao học Người thực hiện: Trần Ngọc Minh 3.3 Suy diễn 54 3.3.1 Luật suy diễn 54 3.3.2 Độ tin cậy công thức 54 3.4 Hợp giải logic ngôn ngữ 55 3.4.1 Định nghĩa hợp giải 55 3.4.2 Tính đắn hợp giải 56 3.4.3 Chứng minh tính đầy đủ dựa phương pháp ngữ nghĩa 58 3.4.4 Cài đặt ví dụ minh họa hợp giải logic ngôn ngữ 62 Kết Luận 76 Tài liệu tham khảo 77 Luận văn cao học Người thực hiện: Trần Ngọc Minh DANH MỤC CÁC CHỮ VIẾT TẮT Từ viết tắt Ý nghĩa Nghĩa tiếng Việt HA Hedge algebras Đại số gia tử RHA Refined Hedge algebras Đại số gia tử mịn hóa cd Contradictory degree Độ mâu thuẫn Luận văn cao học Người thực hiện: Trần Ngọc Minh DANH MỤC CÁC HÌNH VẼ Trang Hình 1.1 Quy tắc hợp giải cho mệnh đề logic Hình 1.2 Cấu trúc file liệu cho chương trình hợp giải mờ Hình 1.3 Kết chương trình hợp giải mờ Hình 3.1 Cây ngữ nghĩa Hình 3.2 Nút suy diễn Hình 3.3 Kết khởi tạo công thức chương trình hợp giải logic ngôn ngữ Hình 3.4 Kết hợp giải logic ngôn ngữ 26 27 28 59 60 66 67 Luận văn cao học Người thực hiện: Trần Ngọc Minh LỜI MỞ ĐẦU Trong năm gần đây, có bước tiến lớn kỹ thuật thiết kế cách giải vấn đề hệ thống giải đáp Cách tiếp cận gọi cách tiếp cận tiên đề mà điều kiện thông tin lưu lại tiên đề vấn đề nguyên giải câu hỏi trả lời phát biểu định lý Cách tiếp cận có hạn chế Đó lưu trữ thông tin tiên đề, ta giả sử tất thông tin hoàn toàn điều không chắn liên quan Tuy nhiên giới thực có nhiều điều không chắn máy móc làm việc giới thực này, chẳng hạn robot thiết kế để khám phá bề mặt mặt trăng chẳng hạn, phải có khả đưa định thông minh môi trường “mờ” Trong bối cảnh đó, mà logic truyền thống (hai trị) không đáp ứng đòi hỏi thực tiễn, năm 1965 xem cột mốc lịch sử tư loài người kể từ thời Aristotle Trong năm này, có hai đột phá quan trọng, thứ J A Robinson, người giới thiệu gọi nguyên tắc hợp giải (resolution principle) thứ hai L A Zadeh, người đề xuất khái niệm tập mờ logic mờ Kể từ năm đó, hình thức logic đa trị logic mờ hay logic ngôn ngữ trở thành phương án thay cho logic truyền thống phương pháp suy diễn, cụ thể nguyên tắc hợp giải, sử dụng cho logic nghiên cứu ngày sâu rộng thu nhiều thành tựu quan trọng công trình T Lee (1972) M Mukaidono (1982, 1983) Đặc biệt, việc nghiên cứu xây dựng logic ngôn ngữ phương pháp suy diễn đề tài “nóng” ngày nay, vì, ngôn ngữ công cụ để người tư duy, để lấy làm lý để đưa định ngôn ngữ tự nhiên lại thường mơ hồ, bất định Suy diễn logic ngôn ngữ, mục đích công việc tạo điều kiện cho việc diễn giải lý luận kiến thức thể ngôn ngữ tự nhiên, mà câu mơ hồ thường dùng để đánh giá mức độ chân lý của Luận văn cao học Người thực hiện: Trần Ngọc Minh kiện Các gia tử sử dụng để cấp độ khác nhấn mạnh giá trị chân lý Nó sử dụng để mô hình hóa kiến thức thể ngôn ngữ tự nhiên Chúng ta thường sử dụng hai mặt gia tử ngôn ngữ ví dụ việc tạo giá trị ngôn ngữ sửa đổi vị từ Do đó, việc sử dụng giá trị chân lý ngôn ngữ gia tử bổ ngữ, để nhấn mạnh giảm bớt giá trị chân lý Chính xác hơn, chương trình suy diễn logic mờ ngôn ngữ, kiện quy tắc đánh giá số mức độ xác định miền giá trị chân lý ngôn ngữ sử dụng gia tử để liên kết kiện quy tắc lại với Có thể nói việc suy diễn ngôn ngữ sử dụng logic mờ gia tử làm cho ngôn ngữ trở nên mềm mại hơn, không cứng nhắc logic truyền thống có hoặc sai Kiến thức gần với kiến thức tự nhiên Lợi việc sử dụng logic mờ để đánh giá giá trị chân lý kiện kiến thức tổng hợp lại chuyên gia, nhà nghiên cứu nên trở nên xác việc đánh giá mức độ đắn kiện.Các ứng dụng mô hình sở liệu mờ cho ngôn ngữ truy vấn linh hoạt, tính toán ngưỡng điều khiển mờ … xây dựng dựa lý thuyết suy diễn ngôn ngữ logic mờ Xuất phát từ thực tế định lựa chọn đề tài “Suy diễn logic ngôn ngữ” làm đề tài tốt nghiệp cá nhân Mục tiêu luận văn gồm hai vấn đề sau : + Thứ nhất, tìm hiểu lý thuyết logic mờ gồm vấn đề : cú pháp, ngữ nghĩa suy diễn, cụ thể phương thức hợp giải Đồng thời cài đặt thử nghiệm hợp giải mờ cho mệnh đề logic + Thứ hai, tìm hiểu lý thuyết logic ngôn ngữ gồm vấn đề : cú pháp, ngữ nghĩa, phương pháp suy diễn phương thức hợp giải logic ngôn ngữ Đồng thời cài đặt thử nghiệm hợp giải logic ngôn ngữ Để hoàn thành luận văn này, bên cạnh việc tìm hiểu, tham khảo sử dụng lại số kết từ báo nêu mục tài liệu tham khảo, Luận văn cao học Người thực hiện: Trần Ngọc Minh tham khảo kế thừa số kết từ hai đồ án tốt nghiệp bạn Nguyễn Ngọc Đức (lớp Hệ thống thông tin – K50) bạn Đỗ Khắc Phúc (lớp : KSTN-CNTTK51) Cấu trúc luận văn chia thành chương sau : Chương : Tìm hiểu lý thuyết logic mờ cú pháp, ngữ nghĩa, suy diễn, đặt biệt phương thức hợp giải mờ với số tính chất thú vị Đồng thời, qua thuật toán hợp giải mờ, tiến hành cài đặt thử nghiệm hợp giải mờ cho mệnh đề logic ngôn ngữ C# Chương : Tìm hiểu cấu trúc đại số gia tử, cấu trúc xây dựng xuất phát từ thuộc tính ngữ nghĩa gia tử giá trị ngôn ngữ Và dựa vào cấu trúc này, kết hợp với logic mờ để tạo thành logic ngôn ngữ (sẽ tìm hiểu kĩ chương 3) Chương : Tìm hiểu lý thuyết logic ngôn ngữ cú pháp, ngữ nghĩa, suy diễn phương thức hợp giải logic ngôn ngữ Đồng thời, tiến hành cài đặt thử nghiệm phương thức hợp giải logic ngôn ngữ ngôn ngữ C# Do hiểu biết, thời gian nghiên cứu hạn chế kính mong Thầy, Cô bạn giúp đỡ đóng góp ý kiến để luận văn hoàn thiện Tôi xin chân thành cảm ơn Hà Nội, tháng 02 năm 2012 Luận văn cao học Người thực hiện: Trần Ngọc Minh đề logic; a, b1 , b , c giá trị ngữ nghĩa; α1, α2 , α3 độ tin cậy công thức Từ đó, có ý tưởng xây dựng cấu trúc liệu sau: - Mệnh đề logic cấu trúc liệu gồm trường: Prop kí hiệu mệnh đề, SeVal giá trị ngữ nghĩa i số quy ước xuất mệnh đề công thức Các mệnh đề công thức có số i - Các công thức lưu trữ cấu trúc bảng băm, công thức lưu số bảng băm tương ứng với số i mệnh đề công thức Ví dụ: công thức F0 = A V B lưu trữ vị trí bảng băm tương ứng với số i = mệnh đề A B - Để tiện việc tính toán, giá trị ngữ nghĩa MolVeryTrue, MolTrue,…sẽ quy thành giá trị khoảng (0, 1) cách cảm tính, ví dụ: MolVeryFalse tương ứng 0.1, MolTrue tương ứng 0.6,….theo thủ tục sau: 63 Luận văn cao học Người thực hiện: Trần Ngọc Minh Các công thúc ví dụ trên: 1) (std_Robert, Hard)M oLF alse  (uni_Robert, hi−ra)F alse  (emp_Robert, Good)P ossT rue 2) (uni_Robert, Hi − ra)M oLV eryT rue 3) (std_Robert, Hard)V eryT rue 4) (emp_Robert, good )F alse Đặt A: (std_Robert, Hard), B: (uni_Robert, hi−ra), C: (emp_Robert, Good) Mã nguồn khởi tạo sau: // khởi tạo công thức 1) md.Prop = "A"; md.SeVal = "MolFalse"; md.i = 0; listLiteral.Add(md);//đưa mệnh đề vào công thức md = new Literal();// khởi tạo mệnh đề md.Prop = "B"; md.SeVal = "False"; md.i = 0; listLiteral.Add(md); md = new Literal(); md.Prop = "C"; md.SeVal = "PossTrue"; md.i = 0; listLiteral.Add(md); // Khởi tạo công thức 2) md = new Literal(); 64 Luận văn cao học Người thực hiện: Trần Ngọc Minh md.Prop = "B"; md.SeVal = "MolVTrue"; md.i = 1; listLiteral.Add(md); // Khởi tạo công thức 3) md = new Literal(); md.Prop = "A"; md.SeVal = "VTrue"; md.i = 2; listLiteral.Add(md); // Khởi tạo công thức 4) md = new Literal(); md.Prop = "C"; md.SeVal = "False"; md.i = 3; listLiteral.Add(md); Kết sau: 65 Luận văn cao học Người thực hiện: Trần Ngọc Minh Hình 3.3 Kết khởi tạo công thức Kết hợp giải sau : Hình 3.4 Kết hợp giải Mã nguồn chương trình: 66 Luận văn cao học Người thực hiện: Trần Ngọc Minh using System; using System.Collections.Generic; using System.Text; using System.Collections; namespace ConsoleApplication2 { class Literal { public string Prop;// ki hieu menh de public string SeVal;// gia tri ngu nghia public int i;// chi so quy uoc su xuat hien cua Literal cung mot cong thuc //cac literals co cung chi so i se la mot cong thuc tuyen cac literals public float GiaTri(string s) { float f=0.0F; if (s == "MVFalse") f = 0.1F;//MoreVeryFalse else if (s == "VFalse") f = 0.2F;//VeryFalse else if (s == "MolVFalse") f = 0.3F;//More or lessVeryFalse else if (s == "False") f = 0.4F;//False else if (s == "MolFalse") f = 0.5F;//More or less False else if (s == "PossFalse") f = 0.51F;//Poss False 67 Luận văn cao học Người thực hiện: Trần Ngọc Minh else if (s == "MolTrue") f = 0.6F;//More or less True else if (s == "PossTrue") f = 0.61F;//poss true else if (s == "True") f = 0.7F;//True else if (s == "MolVTrue") f = 0.8F;//More or less VeryTrue else if (s == "VTrue") f = 0.9F;//VeryTrue else if (s == "MVTrue") f = 0.95F;//MoreVeryTrue return f; } public string GiaTu(float f) { string s = ""; if (f == 0.1F) s = "MVFalse";//MoreVeryFalse else if (f == 0.2F) s = "VFalse";//VeryFalse else if (f == 0.3F) s = "MolVFalse";//More or lessVeryFalse else if (f == 0.4F) s = "False";//False else if (f == 0.5F) s = "MolFalse";//More or less False hoac PossFalse 68 Luận văn cao học Người thực hiện: Trần Ngọc Minh else if (f == 0.51F) s = "PossFalse"; else if (f == 0.6F) s = "MolTrue";//More or less True hoac PossTrue else if (f == 0.61F)s = "PossTrue"; else if (f == 0.7F) s = "True";//True else if (f == 0.8F) s = "MolVTrue";//More or less VeryTrue else if (f == 0.9F) s = "VTrue";//VeryTrue else if (f == 0.95F) s = "MVTrue";//MoreVeryTrue return s; } public string Min(float[]T) //phep lay gia tri nho nhat { float c = 1.0F; for (int i = 0; i

Ngày đăng: 27/07/2017, 20:32

Mục lục

  • TÀI LIỆU THAM KHẢO

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

  • Đang cập nhật ...

Tài liệu liên quan