CHƯƠNG 1. TẬP MỜ Ví dụ 1.4 Cho một tập hợp nhiệt độ mát được định nghĩa như sau: A = {x|200 C ≤ x ≤ 250 C}. Hàm đặc tính của tập hợp A sẽ là: ( 1, nếu x ∈ A µA (x) = 0, nếu x ∈ /A Hàm đặc tính này có dạng hình xung vuông như trong hình 1.2 và chỉ có hai giá trị 0 hoặc 1. Trong thực tế tại các nhiệt độ khác nhau thì độ mát là khác nhau, nhưng với định nghĩa này thì độ mát là như sau nếu x ∈ [20, 25].
Mặt khác, mỗi người lại có cảm giác mát khác nhau. Do đó, tập hợp mờ sẽ là một định nghĩa phù hợp hơn để đánh giá độ mát. Ví dụ này sẽ được để cập sau ở phần tập mờ.3 Các phép toán cơ bản trên tập hợp Trong phần này, một số phép toán căn bản như phép hợp, phép giao và phép bù sẽ được trình bày. Các phép toán này sẽ được thực hiện dựa trên các hàm đặc tính.
Đây là cơ sở để mở rộng các phép tính trên tập mờ sau này. Xét hai tập hợp A và B với các hàm đặc tính tương ứng là µA (x) và µB (x).1 Phép giao của hai tập hợp Giao của hai tập hợp được định nghĩa như sau: A ∩ B = {x|x ∈ A và x ∈ B}.2) Khi đó hàm đặc tính của tập hợp A ∩ B sẽ là: µA∩B (x) = µA (x).4) Cả hai công thức trên đều cho cùng một kết quả, tuy nhiên điều này không còn đúng nữa đối với tập mờ. Để chứng minh, ta có thể lập bảng chân lý, phần này dành cho bài tập về nhà.5 Cho tập hợp A = {x|1 < x < 3} và B = {x|2 < x < 4}, giao của hai tập hợp là: A ∩ B = {x|2 < x < 3}.3 thể hiện đồ thị các hàm đặc tính của tập hợp A màu xanh và tập hợp B màu đỏ ở nửa bên trái, tập hợp A ∩ B ở bên phải. CÁC PHÉP TOÁN CƠ BẢN TRÊN TẬP HỢP 7 Hình 1.3: Các hàm đặc tính của tập hợp A, B, A ∩ B 1.2 Phép hợp của hai tập hợp Hợp của hai tập hợp A và B được định nghĩa là: A ∪ B = {x|x ∈ A hoặc x ∈ B}.
Hàm đặc tính của A ∪ B được tính như sau: µA∪B (x) = µA (x) + µB (x) − µA (x).6) Cả hai công thức (1.5) đều cho cùng kết quả, phần chứng minh dành cho bài tập về nhà. Tuy nhiên, đối với tập mờ thì các công thức này lại cho kết quả khác nhau.6 Xét hai tập hợp A và B như trong ví dụ 1. Giao của hai tập hợp là: µA∪B (x) = {x|1 < x < 4}. Đồ thị hàm đặc tính của tập hợp A ∪ B như hình 1.3 Phép bù của tập hợp Giả sử tập hợp A ⊂ U , trong đó U là tập vũ trụ.
Tập hợp bù của A là: Ac = {x|x ∈ U và x ∈ / A}, với c là từ viết tắt của từ complement, có nghĩa là bù. Khi đó hàm đặc tính của tập bù Ac được tính theo công thức sau: ( 1, nếu x ∈ /A µAc (x) = 0, nếu x ∈ A (1. TẬP MỜ Hình 1.4: Hàm liên thuộc cho ví dụ 1.5: Hàm liên thuộc cho ví dụ 1.7 Tiếp theo ví dụ 1.6, tập bù của tập A là: Ac = {x|x ≤ 1 hoặc x ≥ 3}. Đồ thị của hàm đặc tính µAc (x) và µA (x) được vẽ trong hình 1.5, trong đó µAc có màu đỏ ở bên phải và µA có màu xanh ở bên trái.
Từ đồ thị ta dễ dàng nhận thấy µAc (x) + µA (x) = 1 với mọi x.4 Các tính chất của phép giao và phép hợp Cho các tập hợp A, B và C, phép giao của hai tập hợp có những tính chất như sau: I Tính giao hoán: A ∩ B = B ∩ A I Tính kết hợp: A ∩ (B ∩ C) = (A ∩ B) ∩ C I Nếu A ⊂ B thì A ∩ B = A và A ∩ C ⊂ B ∩ C 1. Các tính chất của phép hợp là: I Tính giao hoán: A ∪ B = B ∪ A I Tính kết hợp: A ∪ (B ∪ C) = (A ∪ B) ∪ C I Nếu A ⊂ B thì A ∪ C ⊂ B ∪ C I (A ∪ B)c = Ac ∩ Bc , (định luật De Morgan). Các tính chất cơ bản này sẽ là cơ sở để xây dựng nên các phép toán trong tập mờ sau này.1 Định nghĩa Lô gíc mờ ra đời từ những năm 1960 bởi Lofti Zadeh [2]. Lô gíc mờ là một khái niệm được mở rộng từ lô gic kinh điển.
Trong lô gic kinh điển chỉ có hai trạng thái đúng hoặc sai, đóng hoặc mở, không hoặc một, hai trạng thái này phủ định lẫn nhau. Về mặt toán học, hai trạng thái này thường có giá trị là 0 và 1. Còn với lô gíc mờ thì ngoài hai trạng thái đúng hoặc sai, không hoặc một thì còn có những trạng thái khác giữa đúng và sai hoặc giữa không và một. Dựa trên lô gíc mờ như thế, tập mờ đã được đưa ra.
Cho tập hợp vũ trụ U , tập hợp mờ (gọi tắt là tập mờ) F được mô tả bởi một ánh xạ từ tập hợp U tới đoạn [0; 1] như sau: µF (x) : U → [0; 1], ∀x ∈ U (1.8 Tập mờ F là tập các sai số xấp xỉ bằng không.9) 0, các trường hợp khác. Tập mờ F có đồ thị dạng tam giác như hình 1. Ta thấy khi sai số bằng không x = 0, hàm liên thuộc có giá trị lớn nhất là µF (0) = 1, khi sai số càng xa gốc 0 giá trị của hàm µF (x) càng giảm và tiến đến 0 khi |x| ≥ 0.6: Hàm liên thuộc µF (x) 1.2 Các dạng hàm liên thuộc Trong thực tế, có nhiều dạng hàm liên thuộc khác nhau do người sử dụng định nghĩa dựa trên kinh nghiệm cá nhân hoặc tri thức của chuyên gia. Phần này sẽ giới thiệu một số dạng hàm liên thuộc hay được sử dụng và được hỗ trợ trong công cụ của Matlab [3].
Do đó, người học có thể dễ dàng tiếp cận với công cụ mờ trong Matlab để phục vụ việc học tập, nghiên cứu, thiết kế và mô phỏng các hệ mờ sau này.7: Hàm liên thuộc dạng tam giác • Hàm tam giác: Hàm tam giác là hàm liên thuộc có dạng giống như hình tam giác, hàm này có ba tham số a, b và c, đây là các hoành độ của ba đỉnh của tam giác, trong đó b là hoàng độ tương ứng với đỉnh có tung độ bằng 1, a và c là các hoành độ tương ứng với các đỉnh có tung độ là 0. Hàm liên thuộc dạng tam giác có công thức như sau: 1. TẬP MỜ 11 0, nếu x ≤ a x−a , nếu a ≤ x < b µF (x) = b−a (1.10) c−x , nếu b ≤ x < c c−b 0, nếu c ≤ x Đồ thị hàm liên thuộc µF (x) như trong hình 1. Trong Matlab, hàm tam giác được tạo ra bởi lệnh trimf, viết tắt bởi cụm từ TRIangular Membership Function, lệnh này có 4 đầu vào như sau: µF (x) = trimf (x, [a; b; c]).
Để thuận tiện, khi định nghĩa hàm liên thuộc dạng tam giác, ta có thể dùng ký hiệu giống như của Matlab là trimf (x, [a; b; c]), trong đó x là biến số.9 Để tạo một hàm liên thuộc dạng tam giác trong Matlab với các hoành độ của các đỉnh lần lượt là 1, 2 và 3, ta soạn thảo như sau trong cửa sổ lệnh (Command Windows) hoặc trong M-file của Matlab như sau: x = [0 : 0.1 : 5]; % khai báo tập vũ trụ cho biến x mu_A1 = trimf (x, [1, 2, 3]); % tạo hàm liên thuộc cho tập mờ A1 plot(x, mu_A1); % vẽ hàm liên thuộc grid on; % tạo lưới trong hình vẽ Đồ thị thu được trong Matlab như hình 1.8: Ví dụ về hàm liên thuộc dạng tam giác trong Matlab • Hàm hình thang: Công thức mô tả hàm liên thuộc dạng hình thang như sau: 12 CHƯƠNG 1. TẬP MỜ 0, nếu x ≤ a x−a b−a , nếu a ≤ x < b µF (x) = 1, nếu b ≤ x ≤ c (1.11) d−x , nếu c ≤ x < d d−c 0, nếu d ≤ x Hàm này có 4 tham số là a, b, c và d. Nếu như b = c, đồ thị sẽ có dạng hàm tam giác. Đồ thị có dạng như hình 1.
Trong Matlab, để mô tả hàm hình thang ta dùng lệnh: mu_F = trapmf (x, [a; b; c; d]), với trapmf viết tắt của Trapezoidal Membership Function.9: Hàm liên thuộc dạng hình thang 1 gbellmf(x,[1 1 5]) 0.10: Hàm liên thuộc hình chuông 1. TẬP MỜ 13 • Hàm hình chuông: Hàm liên thuộc dạng hình chuông được mô tả như sau 1 µF (x) = (1.12) 1 + | x−c a | 2b Trong đó, a đặc trưng cho độ rộng của hình chuông, b > 0 thể hiện độ dốc của hình chuông và c là hoành độ tâm của hình chuông. Đồ thị của hàm hình chuông với các tham số là a = 1, b = 1, và c = 5 như hình 1. Trong Matlab, ta sử dụng lệnh mu_F = gbellmf (x, [a; b; c]), trong đó gbellmf là từ viết tắt của cụm từ Generalized BELL Membership Function.11: Đồ thị của hàm gaussmf • Hàm Gauss: Hàm này có công thức như sau x−c !2 − 12 µF (x) = e σ (1.13) Trong đó, c là hoành độ tâm của hàm liên thuộc, σ là độ rộng của hàm gauss.
Trong Matlab, sử dụng lệnh mu_A = gaussmf (x, [σ; c]), với gaussmf là từ viết tắt của cụm từ GAUSSian Membership Function.11 là đồ thị của một hàm gauss với các tham số là σ = 2 và c = 5. • Hàm Gauss2mf: Cho hai hàm được xây dựng từ hàm gaussmf như sau x−c1 2 ( − 21 µ1 (x) = e σ1 , nếu x ≤ c1 1, nếu x > c1 14 CHƯƠNG 1. TẬP MỜ và ( 2 x−c2 − 12 µ2 (x) = e , nếu x ≥ c2 σ2 1, nếu x > c2 Hàm gauss2mf được xây dựng như sau: µF (x) = µ1 (x) ∗ µ2 (x) (1.14) Hàm này có 4 tham số, do đó sẽ có nhiều bậc tự do hơn khi chỉnh định hệ mờ.12 là một ví dụ thể hiện đồ thị của một hàm µF = gauss2mf(x, [σ1 c1 σ2 c2 ]) Hình 1.12: Hàm gauss2mf được vẽ trong công cụ fuzzy của Matlab.