Khóa luận Logic mờ, số mờ và hệ mờ
Mục lục
Lời nói đầu 2
Mục lục 3
CHƯƠNG I. LOGIC MỜ 5
TẬP MỜ 5
Khái niệm tập mờ 5
Các dạng hàm thuộc tiêu biểu 6
Nhóm hàm đơn điệu 6
Nhóm hàm hình chuông 6
Các khái niệm liên quan 7
Các phép toán trên tập mờ 7
Các phép toán mở rộng 8
SỐ MỜ 10
Định nghĩa 11
Các phép toán 11
Nguyên lý suy rộng của Zadeh 11
LOGIC MỜ 12
Biến ngôn ngữ 12
Mệnh đề mờ 13
Các phép toán mệnh đề mờ 13
Phép toán kéo theo mờ – luật if-then mờ thông dụng 13
Luật modus-ponens tổng quát 14
CHƯƠNG II. HỆ MỜ 16
KIẾN TRÚC CỦA HỆ MỜ TỔNG QUÁT 16
CƠ SỞ LUẬT MỜ 17
BỘ SUY DIỄN MỜ 17
Trường hợp một đầu vào và một luật 18
Trường hợp hai đầu vào và một luật 18
Trường hợp nhiều đầu vào và nhiều luật 19
BỘ MỜ HOÁ 19
Mờ hoá đơn trị 19
Mờ hoá Gaus 19
Mờ hoá tam giác 19
BỘ GIẢI MỜ 20
Phương pháp lấy max 20
Phương pháp lấy trọng tâm 20
Phương pháp lấy trung bình tâm 20
HỆ MỜ LÀ MỘT HỆ XẤP XỈ VẠN NĂNG 20
SO SÁNH HỆ MỜ VỚI MẠNG NƠRON 21
GIỚI THIỆU MỘT SỐ HỆ MỜ TRONG THỰC TẾ 22
CHƯƠNG III. PHƯƠNG PHÁP THIẾT KẾ HỆ ĐIỀU KHIỂN MỜ TỪ TẬP DỮ LIỆU VÀO VÀ RA 24
ĐẶT VẤN ĐỀ 24
THIẾT KẾ HỆ ĐIỀU KIỆN MỜ BẰNG BẢNG DỮ LIỆU VÀO 24
CHƯƠNG IV. MINH HOẠ HỆ MỜ: HỆ ĐIỀU KHIỂN MÁY BƠM NƯỚC TỰ ĐỘNG 26
CHƯƠNG TRÌNH MINH HOẠ HỆ MỜ ĐIỀU KHIỂN MÁY GIẶT 29
Các biến ngôn ngữ 29
Các giá trị ngôn ngữ 30
Các luật mờ 30
Hướng dẫn sử dụng chương trình 30
Kết quả chạy chương trình 34
Thuật ngữ 40
Tài liệu tham khảo 41
--------- Linguistic Variable: botgiat Fuzzy set: botgiat_it Membership function: 1.0 - 0.01(t) if 0.0 <= t <= 100.0 0.0 if 100.0 <= t <= 200.0 Fuzzy set: botgiat_vua Membership function: 0.01(t) if 0.0 <= t <= 100.0 2.0 - 0.01(t) if 100.0 <= t <= 200.0 Fuzzy set: botgiat_nhieu Membership function: 0.0 if 0.0 <= t <= 100.0 -1.0 + 0.01(t) if 100.0 <= t <= 200.0 ********************************************** Computing tgcm... Fuzzy rule base: Fuzzy rule: rule_1 IF klqa_it AND klqa_it THEN tgcm_it Fuzzy rule: rule_3 IF klqa_it AND klqa_it THEN tgcm_vua Fuzzy rule: rule_5 IF klqa_it AND klqa_it THEN tgcm_vua Fuzzy rule: rule_7 IF klqa_vua AND klqa_vua THEN tgcm_vua Fuzzy rule: rule_9 IF klqa_vua AND klqa_vua THEN tgcm_vua Fuzzy rule: rule_11 IF klqa_vua AND klqa_vua THEN tgcm_lau Fuzzy rule: rule_13 IF klqa_nhieu AND klqa_nhieu THEN tgcm_vua Fuzzy rule: rule_15 IF klqa_nhieu AND klqa_nhieu THEN tgcm_lau Fuzzy rule: rule_17 IF klqa_nhieu AND klqa_nhieu THEN tgcm_lau ********************************************** Input values: klqa = 1.3 doban = 0.4 ********************************************** Weight of rules: ------------------------------ Membership value of klqa_it = 0.5666709999999999 Membership value of doban_it = 0.19999999999999996 Min(0.5666709999999999, 0.19999999999999996) = 0.19999999999999996 Weight of rule rule_1 = 0.19999999999999996 ------------------------------ Membership value of klqa_it = 0.5666709999999999 Membership value of doban_vua = 0.8 Min(0.5666709999999999, 0.8) = 0.5666709999999999 Weight of rule rule_3 = 0.5666709999999999 ------------------------------ Membership value of klqa_it = 0.5666709999999999 Membership value of doban_nhieu = 0.0 Min(0.5666709999999999, 0.0) = 0.0 Weight of rule rule_5 = 0.0 ------------------------------ Membership value of klqa_vua = 0.433329 Membership value of doban_it = 0.19999999999999996 Min(0.433329, 0.19999999999999996) = 0.19999999999999996 Weight of rule rule_7 = 0.19999999999999996 ------------------------------ Membership value of klqa_vua = 0.433329 Membership value of doban_vua = 0.8 Min(0.433329, 0.8) = 0.433329 Weight of rule rule_9 = 0.433329 ------------------------------ Membership value of klqa_vua = 0.433329 Membership value of doban_nhieu = 0.0 Min(0.433329, 0.0) = 0.0 Weight of rule rule_11 = 0.0 ------------------------------ Membership value of klqa_nhieu = 0.0 Membership value of doban_it = 0.19999999999999996 Min(0.0, 0.19999999999999996) = 0.0 Weight of rule rule_13 = 0.0 ------------------------------ Membership value of klqa_nhieu = 0.0 Membership value of doban_vua = 0.8 Min(0.0, 0.8) = 0.0 Weight of rule rule_15 = 0.0 ------------------------------ Membership value of klqa_nhieu = 0.0 Membership value of doban_nhieu = 0.0 Min(0.0, 0.0) = 0.0 Weight of rule rule_17 = 0.0 ********************************************** Membership function of the output MC(z): MC(z) = 0.19999999999999996 + 0.025(z) if 0.0 <= z <= 40.0 1.7999999999999998 - 0.015(z) if 40.0 <= z <= 120.0 Primitive function of MC(z): F MC(z) = 0.19999999999999996(z) + 0.0125(z)^2 if 0.0 <= z <= 40.0 1.7999999999999998(z) - 0.0075(z)^2 if 40.0 <= z <= 120.0 Integral of MC(z) in domain [0.0, 120.0]: S(MC(z)) = F MC(z) [0.0, 120.0] = 75.99999999999997 Compute z*MC(z): z*MC(z) = 0.19999999999999996(z) + 0.025(z)^2 if 0.0 <= z <= 40.0 1.7999999999999998(z) - 0.015(z)^2 if 40.0 <= z <= 120.0 Primitive function of z*MC(z): F z*MC(z) = 0.09999999999999998(z)^2 + 0.008333333333333333(z)^3 if 0.0 <= z <= 40.0 0.8999999999999999(z)^2 - 0.0050(z)^3 if 40.0 <= z <= 120.0 Integral of z*MC(z) in domain [0.0, 120.0]: S(z*MC(z)) = F z*MC(z) [0.0, 120.0] = 3893.3333333333317 Defuzzy(z) = S(z*MC(z))/S(MC(z)) = 3893.3333333333317/75.99999999999997 = 51.228070175438596 ------------------------------ Output: tgcm = 51.228070175438596 ********************************************** ********************************************** Computing botgiat... Fuzzy rule base: Fuzzy rule: rule_2 IF klqa_it AND klqa_it THEN botgiat_it Fuzzy rule: rule_4 IF klqa_it AND klqa_it THEN botgiat_vua Fuzzy rule: rule_6 IF klqa_it AND klqa_it THEN botgiat_vua Fuzzy rule: rule_8 IF klqa_vua AND klqa_vua THEN botgiat_vua Fuzzy rule: rule_10 IF klqa_vua AND klqa_vua THEN botgiat_vua Fuzzy rule: rule_12 IF klqa_vua AND klqa_vua THEN botgiat_nhieu Fuzzy rule: rule_14 IF klqa_nhieu AND klqa_nhieu THEN botgiat_vua Fuzzy rule: rule_16 IF klqa_nhieu AND klqa_nhieu THEN botgiat_nhieu Fuzzy rule: rule_18 IF klqa_nhieu AND klqa_nhieu THEN botgiat_nhieu ********************************************** Input values: klqa = 1.3 doban = 0.4 ********************************************** Weight of rules: ------------------------------ Membership value of klqa_it = 0.5666709999999999 Membership value of doban_it = 0.19999999999999996 Min(0.5666709999999999, 0.19999999999999996) = 0.19999999999999996 Weight of rule rule_2 = 0.19999999999999996 ------------------------------ Membership value of klqa_it = 0.5666709999999999 Membership value of doban_vua = 0.8 Min(0.5666709999999999, 0.8) = 0.5666709999999999 Weight of rule rule_4 = 0.5666709999999999 ------------------------------ Membership value of klqa_it = 0.5666709999999999 Membership value of doban_nhieu = 0.0 Min(0.5666709999999999, 0.0) = 0.0 Weight of rule rule_6 = 0.0 ------------------------------ Membership value of klqa_vua = 0.433329 Membership value of doban_it = 0.19999999999999996 Min(0.433329, 0.19999999999999996) = 0.19999999999999996 Weight of rule rule_8 = 0.19999999999999996 ------------------------------ Membership value of klqa_vua = 0.433329 Membership value of doban_vua = 0.8 Min(0.433329, 0.8) = 0.433329 Weight of rule rule_10 = 0.433329 ------------------------------ Membership value of klqa_vua = 0.433329 Membership value of doban_nhieu = 0.0 Min(0.433329, 0.0) = 0.0 Weight of rule rule_12 = 0.0 ------------------------------ Membership value of klqa_nhieu = 0.0 Membership value of doban_it = 0.19999999999999996 Min(0.0, 0.19999999999999996) = 0.0 Weight of rule rule_14 = 0.0 ------------------------------ Membership value of klqa_nhieu = 0.0 Membership value of doban_vua = 0.8 Min(0.0, 0.8) = 0.0 Weight of rule rule_16 = 0.0 ------------------------------ Membership value of klqa_nhieu = 0.0 Membership value of doban_nhieu = 0.0 Min(0.0, 0.0) = 0.0 Weight of rule rule_18 = 0.0 ********************************************** Membership function of the output MC(t): MC(t) = 0.19999999999999996 + 0.009999999999999998(t) if 0.0 <= t <= 100.0 2.4 - 0.011999999999999999(t) if 100.0 <= t <= 200.0 Primitive function of MC(t): F MC(t) = 0.19999999999999996(t) + 0.004999999999999999(t)^2 if 0.0 <= t <= 100.0 2.4(t) - 0.005999999999999999(t)^2 if 100.0 <= t <= 200.0 Integral of MC(t) in domain [0.0, 200.0]: S(MC(t)) = F MC(t) [0.0, 200.0] = 130.0 Compute t*MC(t): t*MC(t) = 0.19999999999999996(t) + 0.009999999999999998(t)^2 if 0.0 <= t <= 100.0 2.4(t) - 0.011999999999999999(t)^2 if 100.0 <= t <= 200.0 Primitive function of t*MC(t): F t*MC(t) = 0.09999999999999998(t)^2 + 0.0033333333333333327(t)^3 if 0.0 <= t <= 100.0 1.2(t)^2 - 0.003999999999999999(t)^3 if 100.0 <= t <= 200.0 Integral of t*MC(t) in domain [0.0, 200.0]: S(t*MC(t)) = F t*MC(t) [0.0, 200.0] = 12333.33333333334 Defuzzy(t) = S(t*MC(t))/S(MC(t)) = 12333.33333333334/130.0 = 94.87179487179492 ------------------------------ Output: botgiat = 94.87179487179492 ********************************************** ********************************************** CONCLUSION: If the input values are: klqa = 1.3 kg doban = 0.4 then the output values are: tgcm = 51.23 ' botgiat = 94.87 g Thuật ngữ approximate reasoning suy luận xấp xỉ center of gravity trọng tâm Confidence độ tin cậy Conjuntive phép hội Core nhân của tập mờ, là tập rõ gồm các phần tử có giá trị hàm thuộc = 1 crisp set tập rõ defineable set tập có thể xác định Defuzzier bộ giải mờ Disjunctive phép tuyển elementary set tập cơ bản, tập cơ sở, vũ trụ trong đó tập mờ được định nghĩa Fuzzier bộ mờ hoá fuzzy inference engine bộ suy diễn mờ fuzzy logic logic mờ fuzzy rule base cơ sở luật mờ fuzzy set tập mờ max-min phương pháp tính luật modus-ponens mờ dùng T-norm min và S-norm max max-prod phương pháp tính luật modus-ponens mờ dùng T-norm tích và S-norm max membership function hàm thuộc, hàm thành viên MIMO(Multi Input Multi Output) hệ mờ nhiều đầu vào và nhiều đầu ra MISO(Multi Input Single Output) hệ mờ nhiều đầu vào và một đầu ra precise set tập chính xác product fuzzy conjunction giao mờ tích rule aggregation kết hợp luật SISO(Single Input Single Output) hệ mờ một đầu vào và một đầu ra S-norm S-chuẩn hay T-đối chuẩn, là hàm tổng quáthóa từ hàm max Support giá của tập mờ, là tập rõ gồm các phần tửcó giá trị hàm thuộc > 0 T-norm T-chuẩn, là hàm tổng quát hóa từ hàm min weighted sum tổng có trọng số Tài liệu tham khảo GS, TSKH. Hoàng Kiếm, giáo trình Phương pháp toán trong tin học, ĐHQG Tp. HCM 2005 GS, TSKH. Hoàng Kiếm, giáo trình Công nghệ tri thức và ứng dụng, ĐHQG Tp. HCM 2004 PGS, TS. Nguyễn Trọng Thuần, Điều khiển logic & ứng dụng, Tập 1, NXB Khoa Học và Kỹ Thuật, 2000 Nguyễn Hoàng Phương, Nadipuram R. Prasad, Lê Linh Phong, Nhập môn trí tuệ tính toán, NXB Khoa Học và Kỹ Thuật, 2002 Nguyễn Hoàng Phương, Bùi Công Cường, Nguyễn Doãn Phước, Phan Xuân Minh, Chu Văn Hỷ, Hệ mờ và ứng dụng, NXB Khoa Học và Kỹ Thuật, 1998 Bùi Công Cường, Nguyễn Doãn Phước, Hệ mờ, mạng nơron và ứng dụng, NXB Khoa Học và Kỹ Thuật, 2001 TS. Đinh Mạnh Tường, Trí tuệ nhân tạo, NXB Khoa Học và Kỹ Thuật, 2002 Đỗ Trung Tuấn, Hệ chuyên gia, NXB Giáo Dục, 1999
File đính kèm:
- Khóa luận Logic mờ, số mờ và hệ mờ.doc