Khoá luận môn học: Phương pháp toán trong tin học

Khoá luận môn học: Phƣơng pháp toán trong tin học MỤC LỤC PHẦN 1 1. DẪN NHẬP 2. CÁC KHÁI NIỆM CƠ BẢN 2.1. Tập rõ và hàm thành viên 2.2. Tập mờ và hàm thành viên 2.3. Các dạng của hàm thành viên 2.4. Các phép toán trên tập mờ 3. CÁC HỆ THỐNG MỜ 3.1. Hàm thành viên cho các biến rời rạc 3.2. Hàm thành viên trong không gian các biến liên tục 4. LUẬT MỜ 5. CƠ SỞ TRI THỨC MỜ 6. LOGIC MỜ 6.1. Phép phủ định 6.2. Phép h i t-norm) 6.3. Phép tuyển t-conorm) 6.4

pdf23 trang | Chia sẻ: huong20 | Ngày: 07/01/2022 | Lượt xem: 339 | Lượt tải: 0download
Tóm tắt tài liệu Khoá luận môn học: Phương pháp toán trong tin học, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
. Luật De Morgan 6.5. Phép kéo theo 7. NGUYÊN LÝ XỬ LÝ CÁC BÀI TOÁN MỜ 7.1. Xác định tập mờ cơ sở và hàm thu c 7.2. Tạo các quy tắc hợp thành 7.3. Kết nhập các quy tắc hợp thành 7.4. Giải mờ 8. LỢI ĐIỂM KHI DÙNG LOGIC MỜ 9. GIỚI HẠN CỦA LOGIC MỜ 10.KẾT LUẬN PHẦN 2 BÀI TOÁN MÁY GIẶT CHƢƠNG TRÌNH DEMO Dương Thanh Tịnh - CH0301071 Trang 1 Khoá luận môn học: Phƣơng pháp toán trong tin học 1. DẪN NHẬP Các mô hình toán học đã giải quyết hiệu quả rất nhiều vấn đề trong tự nhiên. Tuy nhiên, các mô hình toán học kinh điển khá cứng nhắc với việc áp đặt nhiều giả thiết đòi hỏi tính rõ ràng, chính xác cao của các tham số. Trong khi thực tế các vấn đề xảy ra lại luôn bao hàm lượng thông tin không rõ ràng, không đầy đủ và không chắc chắn. Hoạt động tư duy của con người phần nhiều mang tính chủ quan, định tính, từ những thông tin mơ hồ, thiếu chính xác nhưng vẫn giải quyết hầu hết các vần đề trong tự nhiên. Lý thuyết tập mờ là một phương pháp luận linh hoạt, mềm dẻo trong môi trường thông tin phức tạp, dữ kiện không chắc chắn, thiếu chính xác và biến động kết hợp với sự trợ giúp của các chuyên gia để đưa ra được kết quả có độ chính xác cao nhất và tốc độ nhanh nhất. Các chuyên gia sử dụng các lập luận một cách tự nhiên để giải quyết các bài toán. Các tri thức này thường là các tri thức không rõ ràng và rất khó diễn tả bằng các hệ thống logic truyền thống. Từ những năm 1920, Lukasiewicz đã nghiên cứu cách diễn đạt toán học khái niệm mờ. Năm 1965, Lofti Zadeh đã phát triển lý thuyết khả năng và đề xuất hệ thống logic mờ (fuzzy logic). Hiện nay, logic mờ đang được ứng dụng rộng rãi trong rất nhiều lĩnh vực, đặc biệt là các hệ thống điều khiển mờ. Logic mờ đang trở thành một trong những công nghệ thiết kế và phát triển hệ thống điều khiển phức tạp thành công nhất hiện nay. Chúng ta thường nghe nhiều đến thuật ngữ như máy giặt fuzzy, quạt fuzzy, xe máy fuzzy, Chương này trình bày các khái niệm cơ bản về logic mờ, lập luận mờ và hệ thống điều khiển mờ tiêu biểu. Dương Thanh Tịnh - CH0301071 Trang 2 Khoá luận môn học: Phƣơng pháp toán trong tin học 2. CÁC KHÁI NIỆM CƠ BẢN Các biến không được định nghĩa một cách chính xác. Các biến có thể có giá trị thực bất kỳ trong khoảng 0 - 1. 2.1. Tập rõ và hàm thành viên Tập rõ crisp set) là tập hợp truyền thống theo quan điểm của Cantor (crisp set). Gọi A là một tập hợp rõ, một phần tử x có thể có x  A hoặc x  A, Có thể sử dụng hàm  để mô tả khái niệm thuộc về. Nếu x  A,  (x) = 1, nguợc lại nếu x  A,  (x) = 0. Hàm  được gọi là hàm đặc trưng của tập hợp A. 2.2. Tập mờ và hàm thành viên Khác với tập rõ, khái niệm thuộc về được mở rộng nhằm phản ánh mức độ x là phần tử của tập mờ A. Một tập mờ fuzzy set): A được đặc trưng bằng hàm thành viên  và cho x là một phần tử  (x) phản ánh mức độ x thuộc về A. Ví dụ: Cho tập mờ Young Lan 16 tuổi, (Lan)=1 Hùng 25 tuổi, (Hùng)=0.5 Dương Thanh Tịnh - CH0301071 Trang 3 Khoá luận môn học: Phƣơng pháp toán trong tin học 2.3. Các dạng của hàm thành viên Các hàm thành viên của tập mờ có 3 dạng cơ bản là: dạng tăng, dạng giảm và dạng chuông. a) Dạng S tăng 0 nếu x <=  2(x-  )/( -  ) nếu  < x <=   (x)=S(x,  ,  ,  ) = 1 -[2(x-  )/( -  )] nếu  < x <  1 nếu x >=  Dương Thanh Tịnh - CH0301071 Trang 4 Khoá luận môn học: Phƣơng pháp toán trong tin học Hình 2. Hàm S tăng b) Dạng S giảm  (x)=1- S(x,  ,  ,  ) c) Dạng hình chuông S(x;  -  ,  -  /2;  ) if x <=   (x;  ,  )= S(x;  ,  +  /2;  +  ) if x >  Dương Thanh Tịnh - CH0301071 Trang 5 Khoá luận môn học: Phƣơng pháp toán trong tin học Hình. Hàm dạng chuông 2.4. Các phép toán trên tập mờ Các phép toán trên tập mờ được định nghĩa thông qua các hàm thuộc và được xây dựng tương tự như các phép toán trong lý thuyết tập mờ kinh điển, bao gồm tập con, phép giao, phép hợp và phép bù Cho ba tập mờ A, B , C với  A(x),  B(x), C(x) a) Phép giao C=A  B:  C(x) = min( A(x),  B(x)) b) Phép h i C=A B :  C(x) = max( A(x),  B(x)) Dương Thanh Tịnh - CH0301071 Trang 6 Khoá luận môn học: Phƣơng pháp toán trong tin học c) Phép bù C= A :  C(x) = 1-  A(x) 3. CÁC HỆ THỐNG MỜ 3.1 Hàm thành viên cho các biến rời rạc Cho tập vũ trụ E = Tốc độ =  20,50,80,100  đơn vị là Km/g. a. Xét tập mờ F = Nhanh xác định bởi hàm membership  nhanh: E ----  0,1  x1 ----  nhanh (X) Khi ta gán  nhanh (20) = 0 nghĩa là tốc độ 20 Km/g được xem như là không nhanh. Dương Thanh Tịnh - CH0301071 Trang 7 Khoá luận môn học: Phƣơng pháp toán trong tin học theo nguyên tắc đó tập mờ nhanh =  (20,0), (50,0.5), (80,0.6), 100, 1)  hay vắn tắt hơn Nhanh =  0,0.5,0.6,1  Vậy hàm thành viên đánh giá mức độ đúng của các tốc độ trong tập vũ trụ E với khái niệm nhanh. Hàm này có tính chủ quan và do kinh nghiệm hay do thực nghiệm. b. Xét tập mờ trung-bình với hàm thành viên xác định như sau: thì tập Trung Bình = { 0.3,1,0.5,0 } 3.2 Hàm thành viên trong không gian các biến liên tục Chẳng hạn như các tập mờ Nhanh và Trung bình ở trên có thể định nghĩa như là các hàm 2  nhanh (x) = (x/100) 0 if x<=20  trung-bình (x) = (x-20)/30 if 20<=x<=50 (100-x)/50 if 50<=x<=100 } Trong phần sau chỉ xét các hàm thành viên có biến liên tục 4. LUẬT MỜ Có dạng o IF x is A THEN y is B o IF x is A AND y is B THEN z is C o IF x is A OR y is B THEN z is C Dương Thanh Tịnh - CH0301071 Trang 8 Khoá luận môn học: Phƣơng pháp toán trong tin học Với x,y,z : biến ngôn ngữ (linguistic variable) A,B,C : tập mờ (fuzzy set) Luật mờ: o Giúp truyền đạt, mô tả rất tự nhiên những quy luật trong cuộc sống. o Thể hiện được những diễn đạt về chuyên môn hơn o Hiệu lực đối với phạm vi các biến rộng lớn hơn o Một Luật mờ có thể thay thế nhiều, thường là rất nhiều, những luật rõ 5. CƠ SỞ TRI THỨC MỜ Là tập hợp các luật mờ liên quan đến lĩnh vực nào đó. Ví dụ: cơ sở tri thức mờ áp dụng cho Washing Machine o if x is Large and y is Greasy then z is VeryLong; o if x is Medium and y is Greasy then z is Long; o if x is Small and y is Greasy then z is Long; 6. LOGIC MỜ Là mở rộng của thuyết tập mờ qua việc dùng các toán tử logic AND, OR, NOT, ... o Những phát biểu là đề nghị, khẳng định hoặc luật. o Đề nghị và khẳng định có giá trị mờ liên kết với chúng. o Logic mờ áp dụng các luật để tạo ra giá trị mới hoặc mức độ đúng tương ứng. - Đánh giá sự thật. Mức độ đúng giữa đúng và sai. Không phải mọi thứ đều là đúng/sai, bật/tắt, trắng/đen. - Đánh giá thành viên: tập những người cao, tập những thành phố xa xôi, tập những vật đắt tiền. - Logic sử dụng những thuật ngữ thuộc về ngôn từ. Diễn đạt tri thức chuyên gia một cách tự nhiên. Các phép toán trên logic mờ: 6.1. Phép phủ định Định nghĩa: Hàm n:[0,1][0,1] không tăng thỏa mãn điều kiện n(0)=1, n(1)=0, gọi là hàm phủ định. Một vài ví dụ: - Hàm phủ định chuẩn n(x)=1-x - Hàm phủ định n(x)=1-x2 - Họ phủ định (Sugeno,1997) N(x)=(1-x)/(1+x) , với >-1 Hàm n là phép phủ định mạnh, nếu n giảm chặt và n(n(x))=x mọi x. 6.2. Phép h i t-norm) Phép hội (vẫn quen gọi là phép AND) là 1 trong các phép toán logic cơ bản nhất. Nó cũng là cơ sở để định nghĩa phép giao của 2 tập mờ. Định nghĩa: Hàm T:[0,1]2 [0,1] là một t-norm nếu thỏa mãn các điều kiện sau: Dương Thanh Tịnh - CH0301071 Trang 9 Khoá luận môn học: Phƣơng pháp toán trong tin học a) T(1,x)=x, với mọi 0 x 1 (Tồn tại phần tử đơn vị) b) T(x,y)=T(y,x), với mọi 0x, y1 (T có tính giao hoán) c) T(x,y)=T(u,v), với mọi 0xu1, 0yv1 (Không giảm theo từng biến) d) T(x,T(y,z))=T(T(x,y),z) với mọi 0x,y,z1 (T có tính kết hợp) Từ những tiêu đề trên chúng ta suy ra ngay T(0,x). Hơn nữa tiên đề d) đảm bảo tính thác triển duy nhất cho hàm nhiều biến. 6.3. Phép tuyển t-conorm) Giống như phép hội, phép tuyển (hay tóan tử OR) thông thường cần thỏa mãn các tiên đề sau: Định nghĩa: Hàm S:[0,1] gọi là phép tuyển (OR suy rộng) hay là t-conorm nếu thỏa mãn các tiên đề sau: a) S(0,x)=x, với mọi 0x1 (Tồn tại phần tử đơn vị) b) S(x,y)=S(x,y),với mọi 0x,y1 (S có tính giao hoán) c) S(x,y)S(u,v), với mọi 0xu1, 0yv1 (Không giảm theo từng biến) d) S(x,S(y,z)) = S(S(x,y),z) với mọi 0x,y,z1 (S có tính kết hợp) Định lý: Cho n là 1 phép phủ định mạnh, T là một t-norm, khi ấy hàm S xác định trên: [0,1]2 bằng biều thức S(x,y)=nT(nx,ny) với mọi 0x,y1, là một t-conorm. Chọn phép phủ định n(x)=1-x chúng ta có quan hệ giữa T và S như trong bảng: T(x,y) S(x,y) min(x,y) max(x,y) xy x+y-xy max(x+y-1, 0) min(x+y, 1) min0(x,y)=min(x,y) nếu x+y>1 max1(x,y)=max(x,y) nếu x+y<1 =0 nếu max(x,y)1 =0 nếu min(x,y)>0 Z(x,y)=min(x,y) nếu max(x,y)=1 Z’(x,y) =max(x,y) nếu min(x,y)=0 =0 nếu max(x,y)0 6.4. Luật De Morgan Định nghĩa: cho T là t-norm, S là t-conorm, và n là phép phủ định chặt. Chúng ta nói bộ ba (T,S,n) là một bộ ba De Morgan nếu n(S(x,y))=T(nx,ny) Chúng ta nói bộ ba (T,S,n) là liên tục nếu T và S là hai hàm liên tục. Sau đây là hai lớp bộ ba quan trọng Dương Thanh Tịnh - CH0301071 Trang 10 Khoá luận môn học: Phƣơng pháp toán trong tin học Định nghĩa: bộ ba De Morgan (T,S,n) là bộ ba mạnh (strong) khi và chỉ khi có một tự đồng cấu : [0,1][0,1] sao cho: a) T(x,y) =  -1 (max((x) + (y)-1, 0)) b) S(x,y) =  -1 (min((x) + (y), 1)) c) N(x) =  -1 (1- (x)) Định nghĩa: bộ ba De Morgan (T,S,n) là bộ ba chặt (strict) khi và chỉ khi có một tự đồng cấu : [0,1][0,1] sao cho: a) T(x,y) =  -1 (((x)(y)) b) S(x,y) =  -1 (((x) + (y) - (x)(y)) c) N(x) =  -1 (1- (x)) 6.5. Phép kéo theo Đã có khá nhiều nghiên cứu về phép kéo theo. Điều đó cũng tự nhiên vì đây là công đoạn mấu chốt của quá trình suy diễn trong mọi lập luận xấp xỉ, bao gồm cả suy luận mờ. Định nghĩa: Phép kéo theo (implication) là một hàm số I: [0,1][0,1] thỏa mãn các điều kiện sau: a) Nếu xz thì I(x,y) I(z,y) với mọi y[0,1] b) Nếu yu thì I(x,y) I(x,u) với mọi y[0,1] c) I(0,x)= 1 với mọi x[0,1] d) I(x,1)= 1 với mọi x[0,1] e) I(1,0)= 0 Tuy đơn giản nhưng mục e) vẫn cần vì không thể suy ra mục e) từ 4 tiên đề đầu. Để tính toán được, chúng ta cần những dạng cụ thể của phép kéo theo. Sau đây là một số dạng hàm kéo theo, xây dựng dựa vào các phép toán logic mờ đã suy rộng trên. Cho T là t-norm, S là t-conorm, và n là hàm phủ định mạnh 2 Định nghĩa: Dạng kéo theo thứ nhất. Hàm Is1(x,y) xác định trên [0,1] bằng biểu thức Is1(x,y)= S(n(x),y) Rõ ràng ẩn ý sau định nghĩa này là công thức logic cổ điển P=>Q= PvQ. Định lý: Với bất kỳ t-norm T, t-conorm S và phép phủ định mạnh n nào, IS1 là phép kéo theo thỏa định nghĩa phép kéo theo. Phép kéo theo thứ hai sau đây lấy từ lôgic trực cảm (intuitionistic logic) 2 Định nghĩa: Cho T là t-norm, hàm IT(x,y) xác định trên [0,1] bằng biểu thức IT(x,y)= sup{u:T(x,u)y} Định lý: Với bất kỳ t-norm T nào, IT được định nghĩa như trên là phép kéo theo thỏa định nghĩa phép kéo theo. Dương Thanh Tịnh - CH0301071 Trang 11 Khoá luận môn học: Phƣơng pháp toán trong tin học 7. NGUYÊN LÝ XỬ LÝ CÁC BÀI TOÁN MỜ Hình. Quy trình xây dựng hệ thống suy luận mờ Giá trị vào E có thể được đưa vào hệ thống điều khiển mờ thông qua bộ phận nhập. Nó có thể là một modul analog, hoặc có thể là một bộ cảm biến (sensor)... Dữ liệu vào sẽ được chuyển thành các trị mờ. Quá trình này được gọi là mờ hóa (fuzzification). Hệ thống điều khiển sẽ thi hành quá trình lập luận mờ (fuzzy processing), nơi bộ xử lý sẽ so sánh dữ liệu đầu vào với cơ sở dữ liệu chứa giá trị đầu ra. Quá trình lập luận mờ liên quan đến sự thực hiện các luật có dạng IF THEN được định nghĩa trong quá trình thiết kế. Sau khi bộ điều khiển mờ hoàn thành giai đoạn lập luận mờ và đạt đến kết luận cho giá trị đầu ra nó chuyển sang giai đoạn giải mờ để cho ra kết luận đầu ra U ở dạng giá trị rõ. Các hệ thống suy luận mờ (Fuzzy Inference System) thực hiện việc suy luận để tạo ra các quyết định từ các thông tin mơ hồ, không đầy đủ, thiếu chính xác. Quá trình suy luận mờ bao gồm 4 bước sau: - Mờ hoá: xác định các tập mờ cơ sở và hàm thuộc của chúng. - Tạo luật: Xác định các quy tắc hợp thành từ bản chất của ứng dụng và sử dụng để kết hợp các tập mờ cơ sở. - Kết nhập: Kết hợp các quy tắc hợp thành. - Giải mờ: Giải mờ cho các tập mờ kết quả. Dương Thanh Tịnh - CH0301071 Trang 12 Khoá luận môn học: Phƣơng pháp toán trong tin học 7.1 Xác định tập mờ cơ sở và hàm thu c: Đối với một số ứng dụng đơn giản, các tập mờ cơ sở và hàm thuộc có thể xác định được dễ dàng không cần tham khảo ý kiến chuyên gia hoặc ý kiến của chuyên gia chỉ tạo ra các giá trị khởi tạo ban đầu. Phương pháp này cần sử dụng các kỹ thuật tính toán mềm hiện đại (ví dụ như các giải thuật di truyền hoặc mạng nơron).. Đối với các ứng dụng phức tạp, để xác định các tập mờ cơ sở, các hàm thuộc liên quan thường dựa vào kinh nghiệm của các chuyên gia và các quyết định chủ quan của họ. 7.2 Tạo các quy tắc hợp thành: Một hệ thống mờ bao gồm nhiều quy tắc hợp thành. Quy tắc hợp thành được tạo thành từ mối quan hệ của các thành phần của ứng dụng. Quá trình tạo các quy tắc hợp thành có thể được thực hiện bằng một chuyên gia hoặc bằng phương pháp tự động dùng kỹ thuật tính toán mờ. Mỗi quy tắc hợp thành có đầu vào là một số tập mờ cơ bản và tạo ra kết quả một tập mờ ở đầu ra. 7.3 Kết nhập các quy tắc hợp thành: Quá trình này tổng hợp kết quả của các quy tắc hợp thành riêng biệt vào một kết quả duy nhất. Đầu vào của khâu kết nhập là các tập mờ đầu ra của các quy tắc hợp thành. Đầu ra của nó là một tập mờ cho mỗi biến đầu ra. Quá trình kết nhập được thực hiện như sau: Với mỗi đối tượng đầu tiên trong đầu vào của luật hợp thành, tìm giá trị nhỏ nhất của hàm thuộc tại điểm xác định bởi dữ liệu đầu vào. Tiếp tục thực hiện với các đối tượng tiếp theo trong luật hợp thành. Từ tất cả các luật hợp thành, tạo một tập mờ kết quả bằng phép toán max của cá giá trị thuộc có được. 7.4 Giải mờ: Sau quá trình kết nhập các quy tắc hợp thành, chúng ta thu được kết quả đầu ra là một tập mờ. Quá trình giải mờ sẽ xác định rõ một giá trị đại diện từ hàm thuộc của giá trị mờ đầu ra. Giá trị được xác định sẽ là đầu ra của toàn bộ hệ thống. Có hai phương pháp giải mờ chính là phương pháp điểm cực đại và phương pháp điểm trọng tâm. Việc lựa chọn phương pháp giải mờ tuỳ thuộc vào từng ứng dụng cụ thể. Với các ứng dụng phức tạp thì phương pháp điểm trọng tâm được sử dụng nhiều nhất. 8. LỢI ÍCH CỦA VIỆC DÙNG LOGIC MỜ Là một lựa chọn cho phương pháp thiết kế đơn giản hơn và nhanh hơn. Logic mờ đơn giản hóa sự phức tạp trong thiết kế. Chịu được dữ liệu không chính xác, xử lý các bài toán phức tạp rất tốt. Cách tiện lợi để diễn đạt tri thức nhận thức bình thường và tri thức chuyên gia. Ứng dụng trong rất nhiều lĩnh vưc như: Xử lý ảnh, tín hiệu,thiết kế và tổng hợp phần cứng, trí tuệ nhân tạo và hệ chuyên gia/hệ hỗ trợ ra quyết định, các hệ thống điều khiển .: Dương Thanh Tịnh - CH0301071 Trang 13 Khoá luận môn học: Phƣơng pháp toán trong tin học 9. GIỚI HẠN CỦA LOGIC MỜ Một hạn chế hiển nhiên tới lôgic mờ là nó không phải luôn luôn chính xác. Những kết quả được lĩnh hội như một phỏng đoán, vì vậy nó có thể hiện không rộng rãi được tin cậy như một câu trả lời từ lôgic cổ điển.Do vậy nó có những mặt hạn chế như sau: Không phải là giải pháp cho mọi trường hợp. Những mô hình chính xác/rõ có thể hiệu quả và tiện lợi hơn trong 1 số trường hợp. Những tiếp cận khác có thể thẩm định chuẩn hơn. 10. KẾT LUẬN Logic mờ từ khi được nghiên cứu và phát triển đến nay ngày càng được ứng dụng nhiều. Hiện nay, Nhật chiếm đến 70% các sản phẩm có ứng dụng logic mờ. Việc nghiên cứu để ứng dụng tạo ra các sản phẩm ở Việt Nam còn hạn chế, chỉ mang tính nghiên cứu lý thuyết trong các trường đại học. Do đó, việc nghiên cứu công nghệ tri thức trong đó có logic mờ, các hệ chuyên gia cần phải được đẩy mạnh, sao cho việc nghiên cứu gắn liền với từng đề tài, sản phẩm cụ thể. Dương Thanh Tịnh - CH0301071 Trang 14 Khoá luận môn học: Phƣơng pháp toán trong tin học PHẦN 2: ỨNG DỤNG LOGIC MỜ VÀO BÀI TOÁN MÁY GIẶT Ngày nay nhiều trang thiết bị được nhúng trong vào trong nó lôgic mờ để cho việc sử dụng nó dễ hơn, tiện lợi hơn. Chúng ta có thể tìm thấy lôgic mờ trong những camera, những nồi cơm điện, những máy hút bụi, . Như vậy ta có thể có một ý tưởng rằng chúng đã được làm như thế nào, chúng ta sẽ xem mô hình được đơn giản hóa này của một máy giặt ứng dụng logic mờ. Khi sử dụng một máy giặt, việc lựa chọn thời gian giặt dựa vào số lượng quần áo, kiểu và độ bẩn mà quần áo có. Để tự động hóa quá trình này, chúng ta sử dụng những phần tử sensors để phát hiện ra những tham số này ( ví dụ: thể tích quần áo, độ và kiểu chất bẩn). Thời gian giặt được xác định từ dữ liệu này. Không may, không dễ có cách công thức hóa một mối quan hệ toán học chính xác giữa thể tích quần áo và độ bẩn và thời gian giặt. Chúng ta giải quyết vấn đề thiết kế này bằng cách sử dụng lôgic mờ. B điều khiển mờ Chúng ta xây dựng hệ thống mờ như sau: Có hai trị nhập vào : ( 1) Một cho độ bẩn trên quần áo ( 2) Một cho loại chất bẩn trên quần áo. Hai đầu vào này thu được từ phần tử sensors quang học. Độ bẩn được xác định bởi sự trong suốt của nước. Mặt khác, loại chất bẩn được xác định từ sự bão hòa, thời gian nó dùng để đạt đến sự bão hòa. Quần áo dầu mỡ chẳng hạn cần lâu hơn cho sự trong suốt nước để đạt đến sự bão hòa bởi vì mỡ là chất ít hòa tan trong nước hơn những dạng khác của chất bẩn. Như vậy một hệ thống phần tử sensors khá tốt có thể cung cấp những input cần thiết được nhập vào cho bộ điều khiển mờ của chúng ta. Những giá trị cho độ bẩn và loại chất bẩn là đã được chuẩn hóa ( phạm vi từ 0 tới 100) được cho bởi giá trị phần tử sensors. Với biến ngôn ngữ Độ bẩn có các tập mờ Bẩn ít (D.Small) Bẩn vừa (D.Medium) Bẩn nhiều (D.Large) Với biến ngôn ngữ loại chất bẩn có các tập mờ Mỡ ít (K.NotGreasy) Mỡ vừa (K.Medium) Mỡ nhiều (K.Greasy) Với biến ngôn ngữ kết luận xác định thời gian giặt có các tập mờ Giặt rất ngắn (T.VeryShort) Giặt ngắn (T.Short) Giặt vừa (T.Medium) Giặt lâu (T.Long) Giặt rất lâu (T.Very Long) Dương Thanh Tịnh - CH0301071 Trang 15 Khoá luận môn học: Phƣơng pháp toán trong tin học Tập luật Quyết định làm cho khả năng một mờ là bộ điều khiển được lập luật trong một tập hợp những quy tắc. Nói chung, những quy tắc là trực giác và dễ hiểu, Một quy tắc trực giác tiêu biểu như sau : Nếu thời gian bão hòa lâu và sự trong suốt ít thì thời gian giặt cần phải lâu. Từ những sự kết hợp khác nhau của những luật đó và những điều kiện khác, chúng ta viết những quy tắc cần thiết để xây dựng bộ điều khiển máy giặt. Gọi x: chỉ Độ bẩn (0 <= x <= 100) y: chỉ Loại chất bẩn (0 <= y <= 100) z: Thời gian giặt (0 <= z <= 60) if x is Large and y is Greasy then z is VeryLong; if x is Medium and y is Greasy then z is Long; if x is Small and y is Greasy then z is Long; if x is Large and y is Medium then z is Long; if x is Medium and y is Medium then z is Medium; if x is Small and y is Medium then z is Medium; if x is Large and y is NotGreasy then z is Medium; if x is Medium and y is NotGreasy then z is Short; if x is Small and y is NotGreasy then z is VeryShort D.Small D.Medium D.Large K.NotGreasy T.VeryShort T.Short T.Medium K.Medium T. Medium T. Medium T. Long K.Greasy T. Long T. Long T. VeryLong Hàm thành viên Hàm thành viên của Độ bẩn: D.Small(x) = [ 1-x/50 nếu 0 <= x <= 50 0 nếu 50 <= x <= 100] D.Medium(x) = [ x/50 nếu 0 <= x <= 50 2-x/50 nếu 50 <= x <= 100] D.Large(x) = [ 0 nếu 0 <= x <= 50 x/50 –1 nếu 50 <= x <= 100] Hàm thành viên của Loại chất bẩn: K.NotGreasy(y) = [ 1-y/50 nếu 0 <= y <= 50 0 nếu 50 <= y <= 100] K.Medium(y) = [ y/50 nếu 0 <= y <= 50 2-y/50 nếu 50 <= y <= 100] K.Greasy(y) = [ 0 nếu 0 <= y <= 50 y/50 –1 nếu 50 <= y <= 100] Dương Thanh Tịnh - CH0301071 Trang 16 Khoá luận môn học: Phƣơng pháp toán trong tin học Hàm thành viên của kết luận cho từng luật: T.VeryShort(z) = [ 1 nếu 0 <= z <= 4 (18-z)/14 nếu 4 <= z <= 18 0 nếu 18 <= z <= 60 ] T. Short(z) = [ 0 nếu 0 <= z <= 4 (z-4)/14 nếu 4 <= z <= 18 (32-z)/14 nếu 18 <= z <= 32 0 nếu 32 <= z <= 60 ] T.Medium(z) = [ 0 nếu 0 <= z <= 18 (z-18)/14 nếu 18 <= z <= 32 (46-z)/14 nếu 32 <= z <= 46 0 nếu 46 <= z <= 60 ] T.Long(z) = [ 0 nếu 0 <= z <= 32 (z-32)/14 nếu 32 <= z <= 46 (60-z)/14 nếu 46 <= z <= 60 ] T.VeryLong(z) = [ 0 nếu 0 <= z <= 46 (z-46)/14 nếu 46 <= z <= 60 ] Dương Thanh Tịnh - CH0301071 Trang 17 Khoá luận môn học: Phƣơng pháp toán trong tin học Dương Thanh Tịnh - CH0301071 Trang 18 Khoá luận môn học: Phƣơng pháp toán trong tin học Dương Thanh Tịnh - CH0301071 Trang 19 Khoá luận môn học: Phƣơng pháp toán trong tin học Nếu nhập trị input x0 =40 (Độ bẩn), y0=60 (loại chất bẩn) µD.Small(x0) = 1/5 µD.Medium(x0) = 4/5 µD.Large(x0) = 0 µK.NotGreasy(y0) = 0 µK.Medium(y0) = 4/5 Dương Thanh Tịnh - CH0301071 Trang 20 Khoá luận môn học: Phƣơng pháp toán trong tin học µK.Greasy(y0) = 1/5 W1 = min(µD.Large(x0), µK.Greasy(y0)) = min(0,1/5) = 0 W2 = min(µD.Medium(x0), µK.Greasy(y0)) = min(4/5, 1/5) = 1/5 W3 = min(µD.Small(x0), µK.Greasy(y0)) = min(1/5, 1/5) = 1/5 W4 = min(µD.Large(x0), µK.Medium(y0)) = min(0, 4/5) = 0 W5 = min(µD.Medium(x0), µK.Medium(y0)) = min(4/5, 4/5) = 4/5 W6 = min(µD.Small(x0), µK.Medium(y0)) = min(1/5, 4/5) = 1/5 W7 = min(µD.Large(x0), µK.NotGreasy(y0)) = min(0, 0) = 0 W8 = min(µD.Medium(x0), µK.NotGreasy(y0)) = min(4/5, 0) = 0 W9 = min(µD.Small(x0), µK.NotGreasy(y0)) = min(1/5, 0) = 0 Các Wi gọi là các trọng số của luật thứ i Theo lý thuyết hàm thành viên của kết luận cho bởi công thức: µC(z) = W2*T.Long(z) + W3*T.Long(z) + W5*T.Medium(z) + W6*T.Medium(z) µC(z) = 2/5*T.Long(z) + T.Medium(z) Bước tiếp theo là ta phải giải mờ từ hàm thành viên của kết luận bằng cánh tính trọng tâm 60 của hàm µC(z) là ƒ0 z µC(z) d(z) = 705.6 60 Và Moment µC(z) là ƒ0 µC(z) d(z) = 19.6 Vậy Defuzzy(z) =705.6/19.6=36 Do đó nếu độ bẩn và loại chất bẩn là 40 và 60 thì thời gian cần giặt là 36 phút. Dương Thanh Tịnh - CH0301071 Trang 21 Khoá luận môn học: Phƣơng pháp toán trong tin học CHƢƠNG TRÌNH DEMO Do thời gian có hạn nên chương trình chỉ hiện thực các hàm ở trên Input: Giá trị độ bẩn và loại chất bẩn Output: Thời gian cần giặt Với các hàm thành viên, ta lưu trữ chúng ở dạng là array lưu trữ các tọa độ đặc biệt của chúng dirtness : ( Large (@0, 0, @50, 0, @100, 1), Medium (@0, 0, @50, 1, @100, 0), Small (@0, 1, @50, 0 , @100, 0) ); type_of_dirt : ( Greasy (@0, 0, @50, 0, @100, 1), Medium (@0, 0, @50, 1, @100, 0), NotGreasy (@0, 1, @50, 0 , @100, 0) ); wash_time ( VeryLong (@0, 0, @46, 0, @60, 1), Long (@0, 0, @32, 0, @46, 1, @60, 0), Medium (@0, 0, @18, 0, @32, 1, @46, 0, @60, 0) Short (@0, 0, @4, 0, @18, 1, @32, 0, @60, 0), VeryShort (@0, 1, @4, 1, @18, 0, @60, 0) ); Dùng array để lưu giữ Fuzzy Matrix Small =0 Medium=1 Large=2 NotGreasy=0 indexVeryShort indexShort indexMedium Medium=1 indexMedium indexMedium indexLong Greasy=2 indexLong indexLong indexVeryLong Với indexXXX là chỉ số array wash_time chứa phần tử XXX Defuzzy(z) = [trọng tâm của hàm µC(z) ] / (Momen [µC(z)] Dương Thanh Tịnh - CH0301071 Trang 22 Khoá luận môn học: Phƣơng pháp toán trong tin học Tài liệu tham khảo 1. GS TSKH Hoàng Kiếm: Giáo trình Phương Pháp Toán Trong Tin Học. 2. TS. Đỗ Văn Nhơn – TS. Đỗ Phúc Giáo trình Các Hệ Cơ Sở Tri Thức, Đại học Quốc gia Tp.HCM, 2002. 3. 4 5. 6. 7. Bài thu hoạch CSTT của các khóa học trước Dương Thanh Tịnh - CH0301071 Trang 23

Các file đính kèm theo tài liệu này:

  • pdfkhoa_luan_mon_hoc_phuong_phap_toan_trong_tin_hoc.pdf