Giáo trình logic mờ và ứng dụng (dành cho học viên cao học ngành khoa học máy tính)

216 3 0
Giáo trình logic mờ và ứng dụng (dành cho học viên cao học ngành khoa học máy tính)

Đ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

TRƯ$NG Đ)I H,C KHOA H,C KHOA CÔNG NGH* THÔNG TIN NGUYỄN CÁT HỒ NGUYỄN CƠNG HÀO Giáo trình LOGIC M( VÀ +NG D.NG ( Dành cho học viên cao học ngành KHMT ) Hu., 2009 M.C L.C Lời mở đầu ………………………………………………… Trang Chương Lý thuyết tập mờ Trang 1.1 Tập mờ thông tin không chắn ………………… 1.2 Biến ngôn ngữ 1.3 Các phép tính trên tập mờ………………………… 1.4 Quan hệ mờ……………………………………………… 1.5 Đại số tập mờ……………………………………… Trang Trang 14 Trang 15 Trang 47 Trang 53 Chương Lôgic mờ……………………………………… Trang 62 2.1 Các mệnh đề mờ………………………………………… 2.2 Phép kéo theo mờ……………………………………… 2.3 Lượng từ mờ…………………………………………… 2.4 Lập luận xấp xỉ đơn điều kiện………………………… 2.5 Lập luận xấp xỉ đa điều kiện…………………………… Trang 62 Trang 66 Trang 72 Trang 75 Trang 106 Chương Lập luận ngôn ngữ thao tác liệu mờ…… Trang 122 3.1 Đại số gia tử…………………………………………… 3.2 Các phương pháp lập luận ngôn ngữ…………………… 3.3 Thao tác liệu mờ…………………………………… Trang 122 Trang 126 Trang 141 Chương Mô hình sở liệu mờ theo cách tiếp cận Đại số gia tử …………………………………………………… Trang 155 4.1 Mô hình biểu diễn CSDL mờ theo cách tiếp cận ĐSGT… 4.2 Phụ thuộc liệu sở liệu mờ……………… 4.3 Phụ thuộc đơn điệu……………………………………… 4.4 Ngôn ngữ truy vấn sở liệu mờ……………… Trang 155 Trang 170 Trang 180 Trang 193 Tài liệu tham khảo………………………………………… Trang 215 L4I M6 Đ8U Theo triết lý tự nhiên, phát triển khoa học kỹ thuật dẫn đến khả “Kéo dài” lực tư duy, suy luận người Bằng lực tư người khám phá giới thực rộng lớn Thế giới thực tri thức khoa học cần khám phá vô hạn hệ thống phức tạp, ngôn ngữ mà lực tư tri thức sử dụng làm phương tiện nhận thức biểu đạt hữu hạn Sự phát triển lịch sử sáng tạo lồi người chứng tỏ phương tiện ngơn ngữ hữu hạn đủ người mô tả, nhận thức vật, tượng, để tồn phát triển Như hệ tất yếu việc sử dụng số lượng hữu hạn từ ngữ ngôn ngữ tự nhiên để mô tả vô hạn vật, tượng, nhận thấy hầu hết toán liên quan đến hoạt động nhận thức, trí tuệ người thường phát biểu dạng ngôn ngữ tự nhiên Trong lập luận hàng ngày mệnh đề không nhận giá trị chân lý (true) sai (false) Chẳng hạn, nhận tin tức nói “Cháu bé Nguyễn Thủy Thanh thần đồng” tuổi biết đọc nhận biết chữ số Câu khổng thể nói có giá trị chân lý hay sai có nhiều kiến khác kiện cháu Thanh có thực thần đồng hay khơng Có điều chắn cháu Thanh có nhăng lực khác biệt với cháu bé lứa tuổi ta gán cho câu độ tin cậy hay mức độ chân lý sai định, chẳng hạn cấu có giá trị chân lý “có thể đúng”, khái niệm có ngữ nghĩa “mờ” (vague) Như vậy, thấy ngơn ngữ tự nhiên có thơng tin, khái niệm (concepts) có ngữ nghĩa khơng xác, mơ hồ, khơng chắn Những thơng tin, khái niệm khơng xác lại có vai trị quan trọng hoạt động tồn phát triển người Chúng ta nhận thấy thực tiễn nhận thức tư duy, người nhận biết, trao đổi thông tin, lập luận ngơn ngữ Ngơn ngữ dân tộc nào, dù phong phú đến đâu, chứa đựng số hữu hạn ký hiệu (âm thanh, ký tự, …), lại phải phản ảnh số vô hạn vật tượng tự nhiên xã hội Như hệ quả, nhiều khái niệm ngôn ngữ tự nhiên phải biểu thị nhiều vất tượng khác nhau, ngữ nghĩa khơng nhất, khơng xác Như vậy, cách tất yếu ngôn ngữ hàm chứa thông tin, khái niệm gọi mờ, khơng xác (imprecise), khơng chắn (uncertainty) Ví dụ, điều kiện cụ thể ta nói, tốc độ xe máy nhanh hay chậm Khái niệm nhanh hay chậm có ngữ nghĩa khơng xác vì, chẳng hạn, khái niệm nhanh biểu thị vô số giá trị tốc độ thực xe máy, chẳng hạn từ 45 – 65 km/giờ, tốc độ xe mô tô, cộng đồng hiểu nhanh Nhưng nói đến tốc độ cụ 75 tuổi lái mô tơ hiểu q nhanh Hoặc nói tốc độ xe máy điện, khái niệm nhanh hiểu tố độ thực khoảng từ 20 – 30 km/giờ Một bạn đọc chưa đồng tình với cách hiểu khái niệm nhanh, điều nhanh có ngữ nghĩa mơ hồ, khơng xác hay khơng chắn Nhưng điều xảy ngôn ngữ tự nhiên chứa khái niệm xác, chắn? Khi nhận thức phần nhỏ giới thực sống Điều chứng tỏ tầm quan trọng thơng tin, khái niệm mờ, khơng xác hay khơng chắn, gọn gọi chúng khái niệm mờ không chắn Khái niệm mờ khơng chắn giáo trình hiểu hai khái niệm đồng nghĩa Đối tượng nghiên cứu câu có chứa khái niệm mờ gọi mệnh đề mờ Hệ lôgic sở toán học phương pháp lập luận mệnh đề mờ gọi lôgic mờ Vì tồn khái niệm mờ ngôn ngữ tự nhiên thực tế khách quan thân khái niệm chưa hình thức hóa thành đối tượng tốn học, nên trước hết nghiên cứu cách mơ hình hóa tốn học khái niệm mờ, hay khái niệm mờ biểu diễn đối tượng tốn học Sau thiết lập cấu trúc toán học đối tượng Trên cấu trúc vậy, hy vọng xây dựng cấu trúc lôgic mờ phương pháp lập luận để mô cách thức mà người lập luận phương pháp xử lý khái niệm mờ sở liệu Do kiến thức có hạn, giáo trình khơng thể tránh thiếu sót, mong ý kiến đóng góp độc giả giáo trình ngày hồn chỉnh Mọi ý kiến xin gửi cho đại diện tác giả theo địa chỉ: Nguyễn Công Hào Trung tâm Công nghệ thông tin Đại học Huế Số Lê Lợi, TP Huế, email: nchao@hueuni.edu.vn Chương LÝ THUYẾT TẬP MỜ 1.1 Tập mờ thông tin không chắn L.A Zadeh người sáng lập lý thuyết tập mờ với hàng loạt báo mở đường cho phát triển ứng dụng lý thuyết này, khởi đầu báo “Fuzzy Sets” Tạp chí Information and Control, 8, 1965 Ý tưởng bật khái niệm tập mờ Zadeh từ khái niệm trừu tượng ngữ nghĩa thông tin mờ, không chắn trẻ, nhanh, caoIthấp, xinh đẹp , ơng tìm cách biểu diễn khái niệm tốn học, gọi tập mờ, khái quát trực tiếp khái niệm tập hợp kinh điển Để dễ hiểu nhớ lại cách nhìn khái niệm tập hợp kinh điển khái niệm hàm số Cho tập vũ trụ U Tập tất tập U ký hiệu !(U) trở thành đại số tập hợp với phép tính hợp ∪, giao ∩, hiệu \ lấy phàn bù !, (!(U), ∪, ∩, \, !) Bây tập hợp A ∈ !(U) xem λA(a) =1 hàm số λA : U → {0, 1} λA(b) = xác định sau: a b U 1 x ∈ A 0 x ∉ A λ A ( x) =  Mặc dù λA A hai đối tượng tốn học hồn tồn khác nhau, chúng biểu diễn khái niệm tập hợp: x ∈ A λA(x) = 1, hay x thuộc vào tập A với “độ thuộc vào” Vì vậy, hàm λA gọi hàm đặc trưng tập A Như tập hợp A biểu thị hàm mà giá trị độ thuộc hay đơn giản độ thuộc phần tử U vào tập hợp A: Nếu λA(x) = x ∈ A với độ thuộc hay 100% thuộc vào A, cịn λA(x) = x ∉ A hay x ∈ A với độ thuộc tức độ thuộc 0% Trên cách nhìn vậy, chuyển sang việc tìm kiếm cách thức biểu diễn ngữ nghĩa khái niệm mờ, chẳng hạn, lứa tuổi “trẻ” Giả sử tuổi người nằm khoảng U = [0, 120] tính theo năm Theo ý tưởng Zadeh, khái niệm trẻ biểu thị tập hợp sau: Xét tập hợp Atrẻ người xem trẻ Vậy, câu hỏi “Một người x có tuổi n hiểu thuộc tập Atrẻ nào?” Một cách chủ quan, hiểu người có tuổi từ – 25 chắn thuộc vào tập hợp Atrẻ, tức với độ thuộc 1; Nhưng người có tuổi 30 có lẽ thuộc vào tập Atrẻ với độ thuộc 0,6 cịn người có tuổi 50 thuộc vào tập với độ thuộc 0,0 … Với ý tưởng đó, ngữ nghĩa khái niệm trẻ biểu diễn hàm số ,trẻ : U → [0, 1], dạng khái quát trực tiếp từ khái niệm hàm đặc trưng λA tập hợp kinh điển A đề cập Một câu hỏi tự nhiên xuất người có tuổi 30 có lẽ thuộc vào tập Atrẻ với độ thuộc 0,6 mà 0,65? Trong lý thuyết tập mờ khơng có ý định trả lời câu hỏi kiểu mà ghi nhận tập mờ khái niệm mờ phụ thuộc mạnh mẽ vào chủ quan người dùng hay, cách đắn hơn, cộng đồng, hay ứng dụng cụ thể Khía cạch thể tính khơng xác ngữ nghĩa khái niệm mờ Tuy nhiên, thực tế không ảnh hưởng đến khả ứng dụng lý thuyết tập mờ giải pháp dựa lý thuyết tập mờ nhằm vào miền ứng dụng cụ thể khái niệm mờ ứng dụng (hay cộng đồng sử dụng ứng dụng đó) có ý nghĩa chung thống 1.1.1 Khái niệm tập hợp mờ Định nghĩa 1.1 Cho tập vũ trụ U Tập hợp A∼ xác định đẳng thức: A∼ = { , A~ (u ) /u : u ∈ U, ,A∼(u) ∈ [0, 1]} gọi tập hợp mờ tập U Biến u lấy giá trị U gọi biến sở tập U cịn gọi tập tham chiếu hay miền sở Hàm , A~ : U → [0, 1] gọi hàm thuộc (membership function) giá trị , A~ (u ) u gọi độ thuộc phần tử u thuộc tập hợp mờ A∼ Nếu không gây nhầm lẫn, hàm thuộc , A~ ký hiệu A∼(.), biến sở u không biểu thị hiển, hay A∼(u), biến u xuất hiển Lưu ý vế phải định nghĩa A∼ tập kinh điển định nghĩa hoàn chỉnh Họ tất tập mờ miền sở U ký hiệu F(U), F(U) = { , A~ : U → [0, 1]} = [0, 1]U Có nhiều cách biểu diễn hình thức tập mờ Trong trường hợp U tập hữu hạn, đếm hay vô hạn liên tục, tập mờ A∼ biểu diễn biểu thức hình thức sau: Trong trường hợp U hữu hạn, U = {ui : ≤ i ≤ n}, ta viết: A∼ = ∑ 1≤i ≤ n ,A∼(u1)/u1 + ,A∼(u2)/u2 + + ,A∼(un)/un hay A∼ = , A (ui ) / ui ~ Trong trường hợp tập mờ gọi tập mờ rời rạc (discrete fuzzy set) Trong trường hợp U vô hạn đếm được, U = {ui : i = 1, 2, …}, ta viết: A∼ = ∑ 1≤i α }) Như vậy, tập mờ A~ cảm sinh họ tập kinh điển, ta có ánh xạ ! : A~ ∈ F(U) → { Aα~ ∈ !(U): ≤ α ≤ 1} (1*) Để đơn giản ký hiệu, ta viết họ tập kinh điển !(A~) = { Aα~ : ≤ α ≤ 1}, A~ ∈ F(U) Họ tập hợp có tính chất sau: Định lý 1.1 Cho A~, B~ ∈ F(U), ! ánh xạ cho (1*) !(A~) = { Aα~ : ≤ α ≤ 1}, !(B~) = { Bα~ : ≤ α ≤ 1} Khi đó, (i) Mỗi họ !(A~) dãy đơn điệu giảm, α < β , Aα~ ⊇ Aβ~ ; (ii) Nếu A~ ≠ B~ { Aα~ : ≤ α ≤ 1} ≠ { Bα~ : ≤ α ≤ 1} Nghĩa tồn song ánh từ họ tập mờ F(U) vào họ họ tập kinh điển !(U) dạng (1*) Chứng minh: Tính chất (i) dễ dàng rút từ tính chất (A∼(u) ≥ β ⇒ A∼ (u) ≥ α) Để chứng minh (ii), giả sử A∼ ≠ B∼, ∃u∈U(A∼(u) ≠ B∼(u)) Để định ý, ta giả sử có u0 ∈ U cho A∼(u0) > B∼(u0) Chọn α ∈ [0, 1] cho A∼(u0) > α > B∼(u0) Điều khẳng định u0 ∈ Aα~ u0 ∉ Bα~ hay Aα~ ≠ Bα~ Vậy, { Aα~ : ≤ α ≤ 1} ≠ { Bα~ : ≤ α ≤ 1} Hiển nhiên A~ = B~ { Aα~ : ≤ α ≤ 1} = { Bα~ : ≤ α ≤ 1} Như ta chứng tỏ rẳng ánh xạ ! song ánh 1.1.3 Một số khái niệm đặc trưng tập mờ Định nghĩa 1.4 (i) Giá tập mờ: Giá tập mờ A~, ký hiệu Support(A~), tập U , A (u ) ≠ 0, Support(A~) = {u: , A (u ) > 0} ~ ~ (ii) Độ cao tập mờ: Độ cao tập mờ A~, ký hiệu hight(A~), cận hàm thuộc , A U, hight(A~) = sup{ , A (u ) : u ∈ U} ~ ~ (iii) Tập mờ chuẩn (normal): Tập mờ A~ gọi chuẩn hight(A~) = Trái lại, tập mờ gọi chuẩn (subnormal) (iv) Lõi tập mờ: Lõi tập mờ A~, ký hiệu Core(A~), tập U xác định sau: Core(A~) = {u ∈ U: , A (u ) = hight(A~)} ~ Bây lấy số ví dụ việc biểu diễn ngữ nghĩa khái niệm mờ thuộc lĩnh vực khác tập mờ Ví dụ 1.2 Giả sử U tập vũ trụ số đo nhiệt độ thời tiết, chẳng hạn U = [0, 50] tính theo thang độ C Chúng ta xác định tập mờ biểu thị khái niệm mờ thời tiết NĨNG LẠNH Trong ví dụ ta sử dụng hàm số mẫu, gọi Sèhàm đồ thị có hình chữ S Chúng ta ký hiệu hàm S(u, a, b, 10 Wluong = 0.6, fm(thấp) = 0.6, fm(cao) = 0.4, fm(rất) = 0.25, fm(khá) = 0.25, fm(khả năng) = 0.25, fm(ít) = 0.25 Ta có fm(rất thấp) = 0.15, fm(hơn thấp) = 0.15, fm(ít thấp) = 0.15, fm(khả thấp) = 0.15 Vì thấp < thấp < thấp < khả thấp < thấp nên I(rất thấp) = [0,0.15], I(hơn thấp) = [0.15,0.3], I(khả thấp) = [0.3,0.45], I(ít thấp) = [0.45,0.6] Ta có fm(rất cao) = 0.1, fm(khá cao) = 0.1, fm(ít cao) = 0.1, fm(khả cao) = 0.1 Vì cao < khả cao < cao < cao < cao nên I(ít cao) = [0.6,0.7], I(khả cao) = [0.7,0.8], I(hơn cao) = [0.8,0.9], I(rất cao) = [0.9,1] Nếu chọn ψ2 = rất cao ∈ Xluong ψ1=3.000.000, ta có υ(rất cao) = 0.985, ((2.800.000) = 0.92 ((2.000.000) = 0.65 nên Φ2(0.92) = cao Φ2(0.65) = cao Xác định điều kiện (LUONG =1 cao) = Vì υ(rất cao) ∈ I(cao) υ(ít cao) ∈ I(cao) nên ta có (rất cao =1 cao) = (ít cao =1 cao) = Như vậy, câu truy vấn SQL mờ: select * from Suckhoe_tuoi where (TUOI =1 trẻ) and (LUONG =1 cao) cho kết sau: SOCM HOTEN #$%&'()! TUOI 11111 Phạm Trọng Cầu LUONG rất tốt 31 2.800.000 xấu 32 2.000.000 33333 Trần Tiến Bảng 4.13 Kết truy vấn quan hệ Suckhoe_tuoi Ví dụ 4.21 Cho lược đồ quan hệ U = {STT, TENNV, NGHENGHIEP, TUOI, LUONG} quan hệ Nhanvien xác định bảng 4.14 STT TENNV NGHENGHIEP TUOI LUONG An Giáo viên 45 cao Bình Kỹ sư 33 1100 Hà Bác sĩ khả trẻ 500 Hương Y sĩ 36 700 Nhân Giáo viên 46 1500 202 Thuỷ Kiến trúc sư 26 khả cao Thành Y tá trẻ 750 Xuân Thư ký 21 thấp Yến Kỹ thuật viên già 1125 Bảng 4.14 Quan hệ Nhanvien Giả sử từ quan hệ Nhanvien muốn thực câu truy vấn SQL mờ : Cho biết cán có tuổi khả trẻ, sử dụng thuật tốn 4.3 ta có: Bước (1)_(5) : Cho GTUOI = {0, trẻ, W, già, 1}, DTUOI = [0, 100], HTUOI =HTUOI+ ∪ HTUOI èTrong HTUOI+= {hơn, rất}, với < HTUOI è = {ít, khả năng}, với > khả Chọn fm(già) = fm(c+) = 0.35, fm(trẻ) = fm(cI) = 0.65, ,(khả năng) = 0.25, ,(ít) = 0.20, ,(hơn) = 0.15 ,(rất) = 0.40 LDTUOI = HTUOI(trẻ) ∪ HTUOI(già), rresult = ∅ Bước (6)_(11): Vì |khả trẻ| = nên ta cần xây dựng khoảng tương tự mức Ta phân hoạch đoạn [0, 100] thành khoảng tương tự mức 2: fm(rất trẻ) × 100 = 0.40 × 0.40 × 0.65 × 100 = 10.4 Vậy S(0) × 100 = [0, 10.4] (fm(hơn trẻ) + fm(khả trẻ)) × 100 = (0.15 × 0.40 × 0.65 + 0.25 × 0.40 × 0.65 )× 100 = 10.4 S(rất trẻ) × 100 = (10.4, 20.8] (fm(ít trẻ) + fm(rất trẻ)) × 100 = (0.20 × 0.40 × 0.65 + 0.40 × 0.15 × 0.65) × 100 = 9.1 (fm(hơn trẻ) + fm(khả trẻ)) × 100 = (0.15 × 0.15 × 0.65 + 0.25 × 0.15 × 0.65) × 100 = 3.9 S(hơn trẻ) × 100 = (29.9, 33.8] (fm(ít trẻ) + fm(rất khả trẻ)) × 100 = (0.20 × 0.15 × 0.65 + 0.40 × 0.25 × 0.65) × 100 = 8.45 (fm(hơn khả trẻ) + fm(khả khả trẻ)) × 100 = (0.15 × 0.25 × 0.65 + 0.25 × 0.25 × 0.65) × 100 = 6.5 S(khả trẻ) × 100 = (42.25, 48.75] (fm(ít trẻ) + fm(rất trẻ)) × 100 = (0.20 × 0.25 × 0.65 + 0.40 × 0.20 × 0.65) × 100 = 8.45 (fm(hơn trẻ) + fm(khả trẻ)) × 100 = (0.15 × 0.20 × 0.65 + 203 0.25 × 0.20 × 0.65) × 100 = 5.2 S(ít trẻ) × 100 = (57.2, 62.4] Tương tự, tính S(W), S(ít già), S(khả già), S(hơn già), S(rất già), S(1) Như vậy, khoảng tương tự mức là: S(0), S(rất trẻ), S(hơn trẻ), S(khả trẻ), S(ít trẻ), S(W), S(ít già), S(khả già), S(hơn già), S(rất già), S(1) Bước (12): Xác định lân cận mức khả trẻ Ta có khả trẻ ∈ S(khả trẻ) nên lân cận mức khả trẻ W2(khả trẻ) = S(khả trẻ) = (42.25, 48.75] Bước (13)_(27): Ta thấy quan hệ Nhanvien, t1[TUOI] ∈ W2(khả trẻ), t5[TUOI] ∈ W2(khả trẻ) W2(t3[TUOI]) = W2(rất khả trẻ) = W2(khả trẻ) Bước (28): Vậy rresult = {t1, t3, t5} Hay câu truy vấn SQL mờ select * from Nhanvien where TUOI = trẻ cho kết sau : STT TENNV NGHENGHIEP An Giáo viên Hà Bác sĩ Nhân Giáo viên 2(TUOI) TUOI LUONG 45 cao khả trẻ 500 46 1500 khả Bảng 4.15 Kết truy vấn quan hệ Nhanvien sử dụng thuật tốn 4.3 Ví dụ 4.22 Sử dụng quan hệ Nhanvien ví dụ 4.21 Hãy cho biết cán Tuổi khả trẻ có Lương khơng cao Sử dụng thuật tốn 4.4 ta có: Bước (1)_(8): Cho GTUOI = {0, trẻ, W, già, 1}, DTUOI = [0, 100], HTUOI =HTUOI+ ∪HTUOI èTrong HTUOI+= {hơn, rất}, với < HTUOI è = {ít, khả năng}, với > khả Chọn fm(già) = fm(c+) = 0.35, fm(trẻ) = fm(cI) = 0.65, ,(khả năng) = 0.25, ,(ít) = 0.20, ,(hơn) = 0.15 ,(rất) = 0.40 LDTUOI = HTUOI(trẻ) ∪ HTUOI(già) Cho GLUONG = {0, =HLUONG+ ∪ HLUONG thấp, W, cao, 1} DLUONG = [400, 1600], HLUONG è 204 Trong HLUONG+ = {hơn, rất}, với < HLUONG è = {ít, khả năng}, với > khả Chọn fm(cao) = fm(c+) = 0.6, fm(thấp) = fm(cI) = 0.4, ,(khả năng) = 0.15, ,(ít) = 0.25, ,(hơn) = 0.25 ,(rất) = 0.35 LDLUONG = HLUONG(cao) ∪ HLUONG(thấp), rresult = ∅ Bước (9)_(15): Vì |khả trẻ| = |rất cao| = nên ta cần xây dựng khoảng tương tự mức Đối với thuộc tính TUOI: Ta phân hoạch đoạn [0, 100] thành khoảng tương tự mức 2, theo ví dụ 4.2 ta có: S(0), S(rất trẻ), S(hơn trẻ), S(khả trẻ), S(ít trẻ), S(W), S(ít già), S(khả già), S(hơn già), S(rất già), S(1) Đối với thuộc tính LUONG: Ta phân hoạch đoạn [400, 1600] thành khoảng tương tự mức : fm(rất cao) × 1200 = 0.35 × 0.35 × 0.6 × 1200 = 88.2 Vậy S(1)× 1200 = (1511.8, 1600] (fm(hơn cao) + fm(khả cao)) × 1200 = (0.25 × 0.35 × 0.6 + 0.15 × 0.35 × 0.6) × 1200 = 100.8 S(rất cao) × 1200 = (1411, 1511.8] (fm(ít cao) + fm(rất cao)) × 1200 = (0.25 × 0.35 × 0.6 + 0.35 × 0.25 x 0.6) × 1200 = 126 (fm(khả cao) + fm(hơn cao)) × 1200 = (0.15 × 0.25 × 0.6 + 0.25 × 0.25 × 0.6) × 1200 = 72 S(hơn cao) × 1200 = (1213, 1285] (fm(ít cao) + fm(rất khả cao)) × 1200 = (0.25 × 0.25 × 0.6 + 0.35 × 0.15 × 0.6) × 1200 = 82.8 (fm(hơn khả cao) + fm(khả khả cao)) × 1200 = (0.25 × 0.15 × 0.6 + 0.15 × 0.15 × 0.6) × 1200 = 43.2 S(khả cao) × 1200 = (1087, 1130.2] (fm(ít khả cao) + fm(rất cao)) × 1200 = (0.25 × 0.15 × 0.6 + 0.35 × 0.25 × 0.6) × 1200 = 90 (fm(hơn cao) + fm(khả cao)) × 1200 = (0.25 × 0.25 × 0.6 + 0.15 × 0.25 × 0.6) × 1200 = 72 S(ít cao) × 1200 = (925, 997] Tương tự, tính S(W), S(ít thấp), S(khả thấp), S(hơn thấp), S(rất thấp), S(0) Như vậy, khoảng tương tự mức là: S(0), S(rất thấp), S(hơn thấp), S(khả thấp), S(ít thấp), S(W), S(ít cao), S(khả cao), S(hơn cao), S(rất cao), S(1) Bước (16)_(17): Xác định lân cận mức khả trẻ cao 205 Ta có lân cận mức khả trẻ W2(khả trẻ) = S(khả trẻ) = (42.25, 48.75] lân cận mức cao W2(rất cao) = S(rất cao) = (1411, 1511.8] Theo ví dụ 4.2, điều kiện TUOI =2(TUOI) khả trẻ ta có rresult = {t1, t3, t5} Xét điều kiện LUONG ≠2(LUONG) cao, quan hệ Nhanvien, ta có lân cận mức t3[LUONG] = W2(t3[LUONG]) ≠ W2(rất cao) Do ta có rresult = {t3} Bước (18)_(20): Vì ξ phép tốn and nên kết hợp điều kiện TUOI =(TUOI) khả trẻ and LUONG ≠2(LUONG) cao ta có rresult = {t3} Bước (21): Kết rresult = {t3} Vậy, câu truy vấn SQL mờ select * from Nhanvien where TUOI =(TUOI) khả trẻ and LUONG ≠2(LUONG) cao cho kết sau : STT TENNV Hà NGHENGHIEP Bác sĩ TUOI LUONG khả trẻ 500 Bảng 4.16 Kết truy vấn quan hệ Nhanvien sử dụng thuật tốn 4.4 4.4.1.4 Thuộc tính suy dẫn truy vấn liệu mờ Khi thiết kế CSDL, miền trị thuộc tính nhận từ việc tính tốn hay kết hợp hai hay nhiều miền trị thuộc tính khác phương pháp thơng thường thuộc tính khơng cần đưa vào CSDL để để tinh giảm việc thiết kế Chẳng hạn CSDL có thuộc tính SOLUONG DONGIA, THANHTIEN = SOLUONG*DONGIA thuộc tính THANHTIEN khơng cần thiết đưa vào CSDL không muốn lưu trữ giá trị THANHTIEN mà muốn giá trị THANHTIEN phục vụ cho việc thao tác hay truy vấn liệu Hoặc trường hợp khác, quan hệ Suckhoe_svien, muốn tìm sinh viên nữ có sức khỏe khả yếu, thuộc tính SUCKHOE khơng có quan hệ mà kết hợp từ hai thuộc tính CHIEUCAO TRONGLUONG quan hệ Suckhoe_svien, thuộc tính THANHTIEN SUCKHOE gọi thuộc tính suy dẫn 206 Do đó, cách tổng quát ta gọi Pa thuộc tính suy dẫn từ thuộc tính mờ A1, A2, …Aq có miền trị tương ứng Dom(Ai), i = q, Fa: Dom(A1) × Dom(A2) ×… × Dom(Aq)→ [0,1] hàm kết nhập ĐSGT Dom(A1), Dom(A2), …Dom(Aq), x’ giá trị mờ Khi đó, điều kiện Pa =k x’ câu truy vấn SQL mờ xác định sau: Pa =k x’ ⇔ Φk(Fa(x)) =k x’, với x ∈ Dom(A1) × Dom(A2) ×….× Dom(Aq) Ví dụ 4.23 Cho lược đồ quan hệ U = {TENHS, QUEQUAN, DIEMK1, DIEMK2} quan hệ Hoctap xác định sau: TENHS QUEQUAN DIEMK1 DIEMK2 An Huế 9 Bình Hà Nội 10 Lan QTrị Nhân Huế Hùng Đà Nẵng Bảng 4.17 Quan hệ Hoctap Hãy tìm học sinh có kết học tập năm xếp loại tốt (với k =2) Để thực câu truy vấn này, nhận thấy rằng, thuộc tính CANAM khơng có quan hệ hoctap nhận từ thuộc tính DIEMHK1 DIEMHK2 Vì vậy, câu truy vấn sử dụng thuộc tính suy dẫn CANAM Gọi XDiemhk1= (XDiemhk1, GDiemhk1, HDiemhk1, ≤ ) ĐSGT với GDiemhk1 = {yếu, tốt}, H+Diemhk1 = {rất, hơn}, HIDiemhk1 = {khả năng, ít}, > > khả Gọi XDiemhk2= (XDiemhk2, GDiemhk2, HDiemhk2, ≤ ) ĐSGT với GDiemhk2 = {yếu, tốt}, H+Diemhk2 = {rất, hơn}, HIDiemhk2 = {khả năng, ít}, > > khả Chọn hàm kết nhập ĐSGT F = ∑ δ i ν i ( xi ) , với δ1= δ2 = 0.5, ta có i =1 miền trị thuộc tính Dom(CANAM ) = { 0.9, 0.9, 0.4, 0.8, 0.5 } 207 Gọi XCanam= (XCanam, GCanam, HCanam, ≤ ) ĐSGT với GCanam = {yếu, tốt}, H+Canam = {rất, hơn}, HICanam = {khả năng, ít}, > > khả Giả sử ta chọn WCanam = 0.5, fm(rất) = 0.25, fm(hơn) = 0.25, fm(khả năng) = 0.25, fm(ít) = 0.25 Khi ta có fm(tốt) = 0.5, fm(yếu) = 0.4, fm(rất tốt) = 0.125, fm(hơn tốt) = 0.125, fm(khả tốt) = 0.125, fm(ít tốt) = 0.125 Vì tốt < khả tốt < tốt < tốt < tốt nên ta có I(rất tốt)=[0.875,1.0] Mặc khác ta có υ(rất tốt) ∈I(rất tốt), tốt =2 0.9 Vậy câu lệnh select * from hoctap where CANAM =2 tốt cho kết quả: TENHS QUEQUAN DIEMK1 DIEMK2 An Huế 9 Bình Hà Nội 10 Lan QTrị Nhân Huế Hùng Đà Nẵng Bảng 4.18 Kết truy vấn quan hệ Hoctap Các câu truy vấn dạng cần tìm quan hệ tham gia truy vấn liệu “thoả mãn” điều kiện mờ Tuy nhiên, thực tế có dạng câu truy vấn phức tạp mà thường gặp, chẳng hạn: “cho biết hầu hết cán trẻ có lương cao” “cho biết mặt hàng siêu thị bán với số lượng cao” … vấn đề xử lý truy vấn phức tạp Do đó, cần nghiên cứu dạng câu truy vấn có sử dụng lượng từ để đáp ứng việc tìm kiếm liệu CSDL 4.4.2 Truy vấn liệu mờ với lượng từ ngôn ngữ Để khai thác liệu mơ hình CSDL mờ nhiều tác giả mở rộng ngôn ngữ hỏi đáp mơ hình quan hệ đại số quan hệ, ngơn ngữ SQL Điểm mở rộng sử dụng điều kiện mờ, chẳng hạn “tìm cán trẻ có nhiều cơng trình khoa học cơng bố tạp chí quốc tế có uy tín”, “cho biết mặt hàng bán siêu thị thu lợi nhuận lớn” Việc xử lý câu hỏi dạng cần tìm 208 liệu “thỏa mãn” điều kiện mờ Tuy nhiên, gặp yêu cầu “cho biết cán trẻ có nhiều cơng trình khoa học cơng bố tạp chí quốc tế có uy tín”, “cho biết vài mặt hàng bán siêu thị thu lợi nhuận lớn” vấn đề xử lý câu hỏi phức tạp Bởi vì, ngồi việc tìm liệu “thỏa mãn” điều kiện mờ cịn phụ thuộc vào lượng từ “ít 5” “một vài” 4.4.2.1 Tiếp cận ngữ nghĩa liệu dựa việc định lượng ĐSGT a Phương pháp định giá lượng từ ngôn ngữ Để xây dựng phương pháp định giá lượng từ truy vấn, trước hết đánh giá điều kiện mờ (fc1, fc2, fcn) with k quan hệ tham gia truy vấn Có nghĩa tìm liệu γ thuộc quan hệ tham gia truy vấn thỏa mãn điều kiện mờ (fc1, fc2, fcn) with k, thực truy vấn mờ mục 4.4.1 Tiếp theo, định giá lượng từ câu truy vấn dựa vào liệu vừa tìm so với số liệu quan hệ ban đầu tham gia truy vấn Chúng ta chia lượng từ thành hai trường hợp: Trường hợp Q lượng từ tuyệt đối Nếu Q đơn điệu tăng : gọi ||Q|| số lượng xác định lượng từ Q Ta xây dựng hàm ABQ: N → {0,1} cho ∀ x ∈ N, ABQ(x) = x ≥ ||Q|| ABQ(x) = x < ||Q|| Nếu Q đơn điệu giảm: ta xây dựng hàm ABQ: N → {0,1} cho ∀ x ∈ N, ABQ(x)= x ≤ ||Q|| ABQ(x) = x > ||Q|| Trường hợp Q lượng từ tỷ lệ Gọi n số liệu quan hệ ban đầu tham gia truy vấn Khi tùy theo ngữ nghĩa lượng từ Q để xây dựng hàm PRQ: N → {0,1} cho PRQ(x) = PRQ(x) = 0, với x ∈ N x ≤ β*n x ≥ β*n, β∈[0,1] b Đưa lượng từ ngôn ngữ vào câu truy vấn (1) : Đi tìm liệu thỏa mãn điều kiện (fc1, fc2, .fcn) with k đếm tổng số liệu (2) : Tùy thuộc vào lượng từ tuyệt đối hay lượng từ tỉ lệ để áp dụng hàm ABQ hay PRQ 209 (3) : Nếu giá trị hàm ABQ PRQ thỏa mãn điều kiện Q(fc1, fc2, fcn) with k kết truy vấn với điều kiện (fc1, fc2, .fcn) with k Thuật toán 4.5 Thực truy vấn với lượng từ Q Vào : Quan hệ r xác định vũ trụ thuộc tính U = {A1, A2,…, An} Câu truy vấn select from r where Q(fc1, fc2, fcn) with k Ra : Quan hệ rresult chứa liệu thỏa mãn điều kiện Q(fc1,fc2, fcn) with k Phương pháp (1) Begin (2) Count = ||r||, ||r|| số liệu r (3) rresult = ∅ (4) for each γ in (select * from r) (5) if với i∈[1 n] cho γ thoả mãn fci then rresult = rresult ∪ γ (6) Count1 = ||rresult|| (7) if Q lượng tự tuyệt đối then (8) if ABQ(count1) = then select * from rresult (9) if Q lượng từ tỉ lệ then (10) if PRQ(count1) = then select * from rresult (11) End Ví dụ 4.25 Sử dụng quan hệ Luongtuoi thực câu truy vấn sử dụng lượng từ: Hãy cho biết cá nhân có sức khỏe tốt lương cao (trong ví dụ chọn k =1) Câu lệnh truy vấn có dạng select * from Luongtuoi where “ít 2” (SUCKHOE = tốt, LUONG = cao) with Xem miền trị SUCKHOE LUONG ĐSGT ví dụ 4.20 áp dụng thuật tốn 4.1 ta có quan hệ Result sau: SOCM HOTEN #$%&'()! TUOI 11111 Phạm Trọng Cầu rất tốt 31 2.800.000 22222 Nguyễn Văn Tý tốt 85 cao 88888 Thanh Tùng tốt 75 2.500.000 Bảng 4.19 Quan hệ Result 210 LUONG Vì lượng từ Q = lượng từ tuyệt đối ||Result|| = ≥ ||Q|| nên ABQ(||Result||) = Vậy quan hệ Result kết truy vấn Ví dụ 4.24 Sử dụng quan hệ Luongtuoi ví dụ 4.20 thực câu truy vấn sử dụng lượng từ: Hãy cho biết hầu hết cá nhân có sức khỏe xấu có lương thấp (trong ví dụ chọn k =1) select * from Luongtuoi where “hầu hết” (SUCKHOE = xấu, LUONG = thấp) with Áp dụng thuật tốn 4.1 ta có quan hệ Result1 sau: SOCM HOTEN #$%&'()! TUOI LUONG 44444 Vũ Hoàng Khá xấu 45 500.000 66666 Thuận Yến Có thể xấu 61 Thấp Bảng 4.20 Quan hệ Result1 Vì lượng từ Q = hầu hết lượng từ tỉ lệ nên ta xây dựng hàm PRQ : N→{0,1} cho:∀ x ∈ N, PRQ(x) = x ≥ 0.8*||Luongtuoi|| PRQ(x) = ngược lại Ta có ||Result1|| = < 0.8*||Luongtuoi|| nên PRQ(||Result1||)= Vậy kết truy vấn quan hệ rỗng 4.4.2.2 Tiếp cận ngữ nghĩa lân cận tôpô ĐSGT Do truy vấn sử dụng lượng từ xem mở rộng truy vấn mờ câu truy vấn SQL mờ sử dụng lượng từ tổng quát dạng: select from where Q(fc1, fc2, .fcn), Q lượng từ fc1, fc2, fcn điều kiện mờ Chẳng hạn quan hệ Nhanvien ví dụ 4.21, tìm “ít nữa” nhân viên Tuổi trẻ có Lương thấp Khi câu truy vấn có dạng: select * from Nhanvien where ”ít nữa” ( TUOI =1(TUOI) trẻ and LUONG =1(LUONG) cao ) Khơng tính tổng quát, giả sử điều kiện mờ fci câu truy vấn có dạng Ai =k(Ai) fvaluei, Ai thuộc tính mờ có tính đơn điệu fvaluei giá trị mờ, phép toán liên kết điều kiện phép and or Do đó, điều kiện Q(fc1, fc2, .fcn) có dạng: Q(A1 =k(A1) fvalue1 ξ A2 =k(A2) fvalue2 … ξ An =k(An) fvaluen), ξ phép and or 211 Thuật tốn xử lý lượng từ câu truy vấn SQL mờ Có thể xây dựng thuật tốn xử lý lượng từ truy vấn SQL mờ sau: (1) : Đếm tổng số liệu thỏa mãn điều kiện (fc1, fc2, .fcn) (2) : Tùy thuộc vào phân loại lượng từ để chọn phương pháp đánh giá lượng từ phù hợp với yêu cầu Thuật toán 4.6 Thực truy vấn với lượng từ Q Vào : Quan hệ r xác định tập vũ trụ thuộc tính U = {A1, A2, …, An} Câu truy vấn select * from r where Q(A1 =k(A1) fvalue1 ξ A2 =k(A2) fvalue2 … ξ An =k(An) fvaluen), ξ phép and or, Q ∈ QABS ∪ QPRO, với QABS tập lượng từ tuyệt đối, QPRO tập lượng từ tỉ lệ Ra : Một quan hệ rresultQ chứa liệu t thỏa mãn điều kiện Q(A1 =k(A1) fvalue1 ξ A2 =k(A2) fvalue2 … ξ An =k(An) fvaluen) Phương pháp (1) Begin (2) rresultQ = ∅ (3) Sử dụng thuật toán 4.3 trường hợp đơn điều kiện thuật toán 4.4 trường hợp đa điều kiện ta có kết quan hệ rresult (4) if Q ∈ QABS then (5) (6) if fQA(||rresult||) = or fQD(||rresult||) = then rresultQ = rresult elseif (7) if Q ∈ QPRO then (8) (9) (10) begin Xây dựng khoảng: S(1), S(lớn), S(W), S(nhỏ), S(0) Case Q of (11) “Một ít” (12) “Khoảng nữa” : if (||rresult|| / ||r|| )∈ S(W) then rresultQ = rresult (13) (14) (15) “Hầu hết” “Với mọi” end : if (||rresult|| / ||r|| ) ∈ S(0) then rresultQ = rresult : if (||rresult|| / ||r|| ) ∈ S(1) : if (||rresult|| / ||r|| ) =1 212 then rresultQ = rresult then rresultQ = rresult (16) Return rresultQ (17) End Ví dụ 4.25 Sử dụng quan hệ Nhanvien ví dụ 4.21 (i) Cho biết nhân viên có Tuổi khả trẻ, câu truy vấn SQL mờ có dạng: select * from Nhanvien where “ 5” (TUOI =2(LUONG) khả trẻ) Bước (1)_(2): rresultQ = ∅ Bước (3): Vì điều kiện câu truy vấn đơn điều kiện nên áp dụng thuật toán 4.3 ta thực câu truy vấn select * from Nhanvien where TUOI =2(TUOI) khả trẻ Theo ví dụ 4.21 ta có kết STT TENNV NGHENGHIEP An Giáo viên Hà Bác sĩ Nhân Giáo viên TUOI LUONG 45 cao khả trẻ 500 46 1500 Bảng 4.21 Kết truy vấn (i) quan hệ Nhanvien chưa sử dụng lượng từ Bước (4)_(15): Tiếp theo đánh giá lượng từ theo thuật tốn 4.3 Vì lượng từ ∈ QABS đơn điệu tăng, ta có fít A(||rresult||) = fít A(3) = nên kết câu truy vấn select * from Nhanvien where (TUOI =2(LUONG) khả trẻ) khơng có Bước (16): Vậy rresultQ = ∅ (ii): Cho biết hầu hết cán Tuổi khả trẻ có Lương cao, câu truy vấn SQL mờ : select * from Nhanvien where “Hầu hết” (TUOI =2(TUOI) khả trẻ and LUONG =2(LUONG) cao) Bước (1)_(2): rresultQ = ∅ Bước (3): Vì điều kiện câu truy vấn đa điều kiện nên áp dụng thuật toán 4.4 ta thực câu truy vấn select * from Nhanvien where (TUOI =2(TUOI) khả trẻ) and (LUONG =2(LUONG) cao) Theo ví dụ 4.22 ta có kết 213 STT TENNV NGHENGHIEP TUOI LUONG An Giáo viên 45 cao Nhân Giáo viên 46 1500 Bảng 4.22 Kết truy vấn (ii) quan hệ Nhanvien chưa sử dụng lượng từ Bước (4)_(15): Vì lượng từ Hầu hết ∈ QPRO nên xây dựng khoảng S(1), S(lớn), S(W), S(nhỏ), S(0) Chọn fm(lớn) = 0.35, fm(nhỏ) = 0.65, ,(khả năng) = 0.25, ,(ít) = 0.2, ,(hơn) = 0.15 ,(rất) = 0.4 Ta phân hoạch đoạn [0, 1] thành khoảng tương tự mức là: fm(rất lớn) = 0.35 × 0.35 = 0.1225 Vậy S(1) = (0.8775, 1] (fm(khả lớn) + fm(hơn lớn)) = (0.25 × 0.35 + 0.15 × 0.35) = 0.14 Vậy S(lớn) = (0.7375, 0.8775] (fm(ít nhỏ) + fm(ít lớn)) = (0.25 × 0.65 + 0.25 × 0.35) = 0.25 Vậy S(W) = (0.4875, 0.8775], (fm(khả nhỏ) + fm(hơn nhỏ)) = (0.25 × 0.65 + 0.15 × 0.65) = 0.26 Vậy S(nhỏ) = (0.2275, 0.4875] S(0) = [0, 0.2275] Vì (||rresult|| / ||r|| ) = (2/9) = 0.222 ∉ S(1) nên kết câu truy vấn select * from Nhanvien where “Hầu hết” (TUOI =2(TUOI) khả trẻ and LUONG =2(LUONG) cao) khơng có thoả mãn Bước (16): Vậy rresultQ = ∅ 214 TÀI LIỆU THAM KHẢO ! [1] [2] [3] [4] N C Ho and W Wechler (1990), “Hedge algebras: An algebraic approach to structures of sets of linguistic domains of linguistic truth variable”, Fuzzy Sets and Systems 35, 281è293 N C Ho and W Wechler (1992), “Extended hedge algebras and their application to Fuzzy logic”, Fuzzy Sets and Systems 52, 259è281 N C Ho (2003), “Quantifying Hedge Algebras and Interpolation Methods in Approximate Reasoning”, Proc of the 5th Inter Conf on Fuzzy Information Processing, Beijing, March 1è4 , 105è112 Nguyễn Công Hào (2007), “Một phương pháp xử lý giá trị khoảng sở liệu mờ”, Chun san Tạp chí Bưu Viễn thơng Cơng nghệ thơng tin, Các cơng trình nghiên cứu khoa học, nghiên cứu triển khai Công nghệ thông tinITruyền thông, Số 18, tr 68è74 [5] Nguyễn Cát Hồ, Nguyễn Công Hào (2007), “Một cách tiếp cận để xấp xỉ liệu sở liệu mờ”, Tạp chí tin học điều khiển học, T23, S2, tr 110è121 [6] Nguyễn Cát Hồ, Nguyễn Công Hào (2008), “Phụ thuộc đơn điệu sở liệu mờ theo cách tiếp cận ngữ nghĩa lân cận đại số gia tử”, Tạp chí tin học điều khiển học, T24, S1, tr 20è31 [7] Nguyễn Cát Hồ, Nguyễn Công Hào (2008), “Một phương pháp xử lý truy vấn sở liệu mờ theo cách tiếp cận đại số gia tử”, Tạp chí tin học điều khiển học , T24, S4, tr 281è294 [8] Nguyễn Công Hào (2009), “Phụ thuộc hàm mờ với lượng từ ngôn ngữ theo cách tiếp cận đại số gia tử”, Tạp chí Bưu Viễn thơng Cơng nghệ thơng tin, “Chun san Các cơng trình nghiên cứu khoa học, nghiên cứu triển khai Công nghệ thông tinITruyền thông”, T22, S2, tr 87è93 [9] [10] N C Ho, N.V Long (2007), Fuzziness Measure on Complete Hedge Algebras and Quantitative Semantics of Terms in Linear Hedge Algebras, Fuzzy Sets and Systems 158, 452è471 D.A Chiang, L.R Chow and N.C Hsien (1997), “Fuzzy information in extended fuzzy relational databases”, Fuzzy sets ans systems 92, 1è20 215 [11] [12] [13] [14] [15] Cubero J.C., Vila M.A.(1994), “A new definition of fuzzy functional dependency in Fuzzy Relational Databases”, International Journal of Intelligent Systems 9(5),441è448 H Zimmermann (1991), “Fuzzy sets theory and its applications”, 2nd, Ed, Kluwer Acad Pub., Dordrecht Guoqing Chen, Etienne E.Kerre, Jacques Vandenbulcke (1996), “An extended BoyceèCodd normal form in fuzzy relational databases”, IEEE, 1546è1551 S K De, R Biswas and A R Roy (2001), “On extended fuzzy relational database model with proximity relations”, Fuzzy sets and Systems 117, 195è 201 ShyueèLiang Wang, YuèJane Tsai (1998), “Null queries with IntervalèValued Ambiguous Attributes”, IEEE, 2150è2153 ! 216 ... 1.3.11.4 Phương trình số học mờ Cũng số học, có số học số mờ giải phương trình số học Chúng ta thấy với biểu diễn tập mờ qua họ tập mức, chứng ta dẽ dàng giải phương trình số học mờ Chúng ta lấy... hay ứng dụng cụ thể Khía cạch thể tính khơng xác ngữ nghĩa khái niệm mờ Tuy nhiên, thực tế không ảnh hưởng đến khả ứng dụng lý thuyết tập mờ giải pháp dựa lý thuyết tập mờ nhằm vào miền ứng dụng. .. nghiên cứu ứng dụng, người ta thường sử dụng số mờ đặc biệt, gọi số mờ tam giác hay hình thang (xem Hình 1.8) Các phép tính số học số mờ Very small Có hai cách định nghĩa phép tính số học số mờ small

Ngày đăng: 10/12/2022, 13:17

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

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

Tài liệu liên quan