Luận văn Một số quy trình suy diễn trong hệ mờ

Các thuật toán này có thể được kết hợp với mạng nơ-ron mờ hoặc đưa vào các ứng dụng trí tuệ nhân tạo (như hệ chuyên gia, hệ hỗ trợ quyết định, .) giúp cho hệ thống suy diễn cho một kết quả đúng đắn và chính xác hơn, phù hợp với yêu cầu của người chuyên gia và yêu cầu thực tế của hệ thống suy diễn. Các thuật toán này khi dùng bộ công cụ Simulink của Matlab có thể được sử dụng để cài đặt vào bộ điều khiển với các senso nhận tín hiệu điều khiển bên ngoài nhưcác biến đầu vào và các giá trị ngưỡng.

pdf84 trang | Chia sẻ: lylyngoc | Lượt xem: 5359 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận văn Một số quy trình suy diễn trong hệ mờ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
mờ, mỗi luật có liên kết với đầu ra riêng của nó. Vai trò của các tập mờ là để tạo thành hạt (bó) của các giá trị đầu vào - đầu ra. Các bó này được kết hợp với từng luật riêng lẻ. Trong một trường hợp hạn chế khi mỗi bó chứa chỉ một đầu đọc và LM trùng với một tập hợp các dữ liệu đầu vào - đầu ra. Số lượng luật của mô hình luật cơ sở cần thiết để mô tả đặc trưng khả năng cho mô hình cho tổng quát. 3.3. Suy diễn với mô hình mờ Trong phần này chúng ta mô tả cơ chế cơ chế lập luận cơ bản với các mô hình ngôn ngữ bằng cách xem xét trường hợp của một hệ thống một luật. Máy móc được sử dụng để phát triển cơ chế này lý luận dựa trên lý thuyết về lý luận gần đúng giới thiệu của Zadeh. Theo lý thuyết về lập luận xấp xỉ của một luật dạng: IF U là B THEN V là D (3.2) có thể được dịch ra một đề xuất dạng (U,V) là R trong đó R là một quan hệ mờ được định nghĩa trên không gian Đề các X × Y. Cho đầu vào mờ U là A kết nối với luật (3.2) và có quan hệ (U,V) là G trong đó: G = A ∩ R. (3.3) G là một tập mờ cũng được định nghĩa trên không gian X × Y có hàm thuộc: 43 G(x,y) = A(x) ∧ R(x,y) (3.4) Áp dụng luật chiếu chúng ta có đầu ra V là F trong đó F là một tập con mờ của Y, F(y) = שx(G(x,y)) = שx(A(x) ∧ R(x,y)) (3.5) Công thức trên có thể được viết lại rút gọn hơn dưới dạng luật suy diễn max- min như sau: F = A ל R (3.6) Ở trên, phần giao mờ của A và R là G được xác định bởi toán tử min (∧). Một cách biên dịch khác sử dụng t - chuẩn nhân thay vì toán tử min cho ta luật suy diễn max-prod: F= A ڃ R (3.7) theo công thức này, hàm thuộc của tập mờ F được suy luận ra từ quan hệ R là: F(y) = שx(G(x,y)) = שx(A(x). R(x,y)) (3.8) Thực chất, luật suy diễn là một dạng toán tử của mô hình ngôn ngữ; nó được xem như là một ánh xạ mà xác định một chuyển hóa của giá trị mờ đầu vào tới đầu ra. Đó là một cách biểu diễn lại của mô hình, đặc biệt trong các trường hợp hạn chế không gian trình bày. Ứng dụng của luật suy diễn cho các tính toán cụ thể là khá giới hạn, đặc biệt đây là trường hợp khi đầu vào của hệ thống là giá trị dãy số. Tuy nhiên, chúng ta sử dụng nó để biểu diễn lại trong một dạng chuyển hóa rút gọn được xác định bởi mô hình ngôn ngữ. Đối với các không gian giới hạn X và Y có p và q, chúng ta có thể biểu diễn các tập mờ A và B, D và F bằng cách sử dụng các véc tơ hàm thuộc là các dòng của các véc tơ [A] và [B], [D] và [F] với số chiều p và q tương ứng, và quan hệ mờ R là một ma trận [R] có (p×q) chiều. Sau đó các luật max-min và max-product của suy diễn có thể viết lại dưới dạng ma trận: [F] = [A] ל [R] (3.9) [F]= [A] ڃ [R] (3.10) Kiểm tra lại công thức (3.5) và (3.8) chỉ ra rằng các dạng ma trận của các luật suy diễn dạng max-min (3.9) và max – product (3.10) là dạng đặc biệt của 44 phép nhân trong (inner products) véc tơ [A] và ma trận [R] trong đó phép tổng được thay thế bởi toán tử max (∨) và trong trường hợp luật max – product thì phép nhân được thay thế bởi một toán tử min(∧). Từ các công thức trên, chúng ta chỉ ra rằng một luật mờ tương ứng với một quan hệ mờ R là bản chất chung. Hơn nữa không có một xem xét nào tới trường hợp có luật có nhiều biến, quá trình kết hợp các đầu ra của các luật này. Ở phần sau, chúng ta sẽ trình bày 2 tiếp cận cụ thể về cách chuyển hóa các luật vào một quan hệ mờ và liên quan đến các toán tử kết hợp. 2 tiếp cận này đưa đến 2 cơ chế suy diễn khác có khả thi trong các mô hình. 3.4. Mô hình Mamdani (Constructive) và Logical (Destructive) Trong mô hình Mamdani, quan hệ kết hợp với một luật cụ thể có được thông qua một kết hợp của giả thiết và kết luận của luật. Hơn nữa, trong các mô hình này toàn bộ đầu ra hệ thống từ một tập các luật được xây dựng bởi việc thêm vào các đầu ra của từng luật riêng biệt. Theo cách này, mỗi luật có dạng: IF U là Bi THEN V là Di (3.11) được giải thích như một điểm mờ, 2 thông số, và được biểu diễn như một quan hệ Ri là quan hệ có được như một phéo giao mờ của 2 tập mờ Bi và Di: Ri = Bi ∩ Di (3.12) Hình 3.1: Phân phối kết hợp luật R1(x,y): IF U là Bi THEN V là Di Ri định nghĩa trong không gian Đề các X × Y, có hàm thuộc như sau: Ri(x,y) = Bi(x) ∧ Di(y) (3.13) 45 Biểu thức trên có nghĩa là quan hệ mờ Ri định dạng một miền hình chữ nhật trong không gian Đề các X × Y (xem hình 3.1) với phép phân phối như công thức (3.13) 3.4.1. Phương pháp lập luận Mandani Theo phương pháp Mamdani, kết nối ngôn ngữ giữa các luật riêng biệt được giải thích như một phép kết hợp OR, việc tích hợp các luật được hoàn thành thông qua một quan hệ mờ cụ thể nhất định: ∪m j iRR 1= = (3.14) Cách biểu diễn này dẫn đến một suy diễn tự nhiên của mô hình này. Hàm thuộc của toàn bộ đầu ra R được cho bởi công thức: 1 1 ( , ) ( , ) ( ( ) ( )) m m i i ii i R x y R x y B x D y= == ∨ = ∨ ∧ (3.15) Với một đầu vào cho trước U = A, đầu ra F đạt được bởi phương pháp này được định nghĩa bởi công thức suy diễn max-min 1 1 ( ) m m i i i i i F A R A R A B D = = ⎛ ⎞ ⎛ ⎞= = = ∩⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠ D D D∪ ∪ (3.16) Với hàm thuộc của F ta có: 1 ( ) [ ( ) ( , )] ( ( ) ( , )) m x x i F y A x R x y A x R x y = ⎡ ⎤= ∧ = ∧⎢ ⎥⎣ ⎦∨ ∨ ∨ 1 ( ) ( ( ) ( ) ( )) m i i i x F y A x B x D y = ⎡ ⎤= ∧ ∧⎢ ⎥⎣ ⎦∨ ∨ 1 ( ) [ ( )] m i i i F y D yτ = = ∧∨ (3.17) Trong đó: Poss[ | ] [ ( ) ( )]i i i x B A B x A xτ = = ∧∨ (3.18) 46 Giả thiết rằng điều kiện khả thi Bi của A cho trước, τi là mức đốt (DOF) của luật thứ i. Trong công thức (3.17), tính suy diễn tự nhiên vốn có của tiếp cận này trở nên rất rõ ràng. Chúng ta thấy rằng đầu ra được suy diễn bằng một trọng số kết hợp của các đầu ra của mỗi luật. Cụ thể nếu không có mức đốt của luật nào thì đầu ra là giá trị rỗng (null). Từ đó chúng ta thấy mô hình này là một kiểu chồng lên liên tiếp các luật riêng biệt. Trong trường hợp đặc biệt, thường xảy ra trong bộ điều khiển logic mờ, là bộ luật có đầu vào là một giá trị xác định x*∈ X, tập mờ đầu vào A là một đơn trị logic mờ với hàm thuộc một lớp tại x* và số không ở nơi khác trên vũ trụ X. 0 ( ) 1 nÕu x x* nÕu x = x* A x ≠⎧= ⎨⎩ Trong trường hợp này biểu thức (3.18) cho mức đốt (DOF) trở thành: [ | ] ( *)i i iPoss B A B xτ = = (3.19) Tóm lại, chúng ta có được các thuật toán sau đây để tính đầu ra đó là được phản ánh bởi một LM (1) bằng phương pháp Mamdani giả thiết cho đầu vào U = A hay U = x*. Thuật toán 1: 1. Với mỗi luật của LM (1) - tính toán DOF - các τi của luật τi = ∨x[Bi(x) ∧ A(x)] nếu đầu vào là một tập mờ A τi = Bi(x*) nếu đầu vào là một dãy số x* 2. Tìm tập mờ Fi được phản ánh bởi luật thứ i ( ) ( )i i iF y D yτ= ∧ 3. Tổng hợp các tập mờ suy diễn Fi bằng cách sử dụng toán tử max. 1 ( ) ( ) m i i F y F y = =∨ 47 1 1( ( ) ( ))x B x A xτ = ∨ ∧ 1 1( ))D yτ ∧ 2 2( ( ) ( ))x B x A xτ = ∨ ∧ 2 2( ))D yτ ∧ ( ( ) ( ))m x mB x A xτ = ∨ ∧ ( ))m mD yτ ∧ ∨ Hình 3.2: Phương pháp lập luận Mamdani/Constructive Hình 3.2 biểu diễn sơ đồ khối của cơ chế trong của hệ LM SI-SO là hệ dựa trên phương pháp suy diễn Mamdani. Hình 3.3: Kết quả tính toán đầu ra bằng hình phương pháp Mamdani 48 Hình 3.3 biểu diễn một dạng đồ họa của ứng dụng phương pháp Mamdani để tính giá trị đầu ra mờ F từ một hệ 2 luật giả sử rằng đầu vào là một tập mờ A. IF U là B1 THEN V là D1 ALSO IF U là B2 THEN V là D2 3.4.2. Phương pháp lập luận logic Các mô hình kiểu logic dựa trên một giải thích thay thế cho các định nghĩa của mối quan hệ Ri thu được từ các luật và các thủ tục tích hợp của các luật riêng lẻ. Khi chúng ta xem mô hình ngôn ngữ kiểu logic đạt được trong một tình huống mà đầu ra tổng quát đạt được được bằng cách loại bỏ khả năng không chấp nhận các luật riêng biệt và như vậy có thể được xem như là một phương pháp phá hủy. Trong phương pháp này mỗi luật riêng lẻ: IF U là Bi THEN V là Di Được dịch bởi một giải thích logic của toán tử IF-THEN và các kết quả như vậy trong một mối quan hệ mờ Ri được xác định bởi: ii iR B D= ∪ (3.20) Các mối quan hệ mờ Ri định nghĩa trên không gian Đề các X × Y có hàm thuộc: ( , ) ( ) ( )ii iR x y B x D y= ∪ (3.21) Trong đó ( ) 1 ( )i iB x B x= − Theo cách tiếp cận này kết nối giữa các luật riêng lẻ, ALSO, được dịch như là một kết quả liên kết trong việc tích hợp các luật riêng lẻ, trở nên hoàn chỉnh bởi phép giao: 1 m i i R R = =∩ (3.22) Do đó trong trường hợp quan hệ mờ R có kết nối phân phối khả năng 49 1 1 ( , ) ( , ) ( ) ( ) m m ii i i i R x y R x y B x D y = = = = ∨∧ ∧ (3.23) Với một tập mờ đầu vào cho trước U = A, đầu ra suy ra sử dụng phương pháp logic thu được bằng cách suy diễn luật max-min. 1 1 ( ) m m ii i i i A R A R A B D = = ⎛ ⎞ ⎡ ⎤= = ∪⎜ ⎟ ⎢ ⎥⎝ ⎠ ⎣ ⎦ D D D∩ ∩ Chúng ta giả sử A RD là một tập con mờ F, lớp thuộc của nó là 1 1 ( ) [ ( ) ( , )] ( ( ) ( , )) [ ( ) ( ) ( ) ( )] m i x x i m i i x i G y A x R x y A x R x y B x A x D y A x = = ⎡ ⎤= ∧ = ∧⎢ ⎥⎣ ⎦ ⎡ ⎤= ∧ ∨ ∧⎢ ⎥⎣ ⎦ ∨ ∨ ∧ ∨ ∧ Bây giờ hãy xem xét các tập con mờ F có: 1 ( ) [ ( ) ( ) ( ) ( )] m i i i x F y B x A x D y A x = ⎡ ⎤= ∧ ∨ ∧⎢ ⎥⎣ ⎦∧ ∨ chứng tỏ G(y) ≤ F(y) với mọi y, i.e., G ⊆ F. Khi giá trị biên dịch V là F và G ⊆ F thì bằng việc sử dụng quy tắc kế thừa chúng ta có thể suy ra V là F. Với F thực sự nhỏ hơn G, đó là một suy diễn thực sự đúng chúng ta sẽ thấy đây là một công thức có ích cho suy diễn. Giả sử rằng A(x) là dạng thông thường, A(x) = 1 với một số x, chúng ta có công thức sau: 1 ( ) [ ( )] m i i i F y D yτ = = ∨∧ (3.24) Trong đó Poss[ | ] [ ( ) ( )]i ii x B A B x A xτ = = ∧∨ (3.25) điều kiện khả năng |iB A biểu diễn mức đốt của luật thứ i. 50 Nếu chúng ta xét lại trường hợp đặc biệt với tập đầu vào x*, tập mờ A là một tập mờ có hàm thuộc dạng: 0 if x x* ( ) 1 if x = x* A x ≠⎧= ⎨⎩ Khi đó công thức (3.14) biểu diễn mức đốt là: Poss[ | ] 1 ( *) 1ii i iB A B xτ τ= = − = − Trên đây là tóm tắt của thuật toán sau để tính toán đầu ra biên dịch bởi LM thông qua phương pháp logic: Thuật toán 2: 1. Đối với mỗi luật của LM (1) tính: [ ( )]ii x B A xτ = ∧ nếu đầu vào là một tập mờ A; 1 ( )i iB uτ = − Nếu đầu vào một tập hợp số u. 2. Tìm tập mờ Ei suy ra bởi các luật ( ) ( )ii iF y D yτ= ∧ 3. Tích hợp các tập mờ được suy diễn Ei bằng cách sử dụng toán tử min: 1 ( ) ( ) m i i F y F y = = ∧ Từ thuật toán trên chúng ta có thể thấy bản chất của sự phá hủy tự nhiên của tiếp cận này. Trước tiên chúng ta chú ý rằng một luật có iτ =0, iτ =1, từ đó Fi = Y và nó không đóng vai trò trong quá trình tích hợp của bước thứ 3. Mặt khác nếu iτ =1, iτ = 0, thì Fi = Di và trong bước thứ 3 nó tự khử bất kỳ phương án nào với hàm thuộc thấp trong Di. Hình 3.4 biểu diễn sơ đồ khối của cơ chế suy diễn dựa vào phương pháp lập luận logic. 51 Hình 3.4: Sơ đồ khối của phương pháp lập luận lôgic Thuật toán để tính toán đầu ra của LM (Hình 3.3), thông qua phương pháp logic, được biểu diễn bằng dạng đồ thị ở hình 3.5: Hình 3.5: Tính toán kết quả đầu ra bằng hình của phương pháp logic 52 Mở rộng 2 tiếp cận trên với mô hình ngôn ngữ có thể làm được bằng cách hiện thực hóa các toán tử max và min đã sử dụng trong công thức (3.17) và (3.24) chỉ là những trường hợp cụ thể của t - chuẩn và t - đối chuẩn. Từ đó, chúng ta có thể có thể các biểu thức (3.17) và (3.24) ở dạng thông dụng hơn của đầu ra với các mô hình kiểu Mamdani (contructive) và kiểu logic (destructive) 1 ( ) [ ( )] m i i i F y D yτ = = ⊗⊕ (3.26) 1 ( ) [ ( )] m i i i E y D yτ = = ⊕⊗ (3.27) Trong đó ۪ và ۩là các toán tử t - chuẩn và t - đối chuẩn tương ứng. Ví dụ, nếu toán tử nhân đại số được xem trong (3.26) là một t - chuẩn chúng ta có giải mờ theo phương pháp Larsen: 1 ( ) [ ( )] m i i i F y D yτ = =∨ Hình 3.6: Biểu diễn các quan hệ mờ R tương ứng với phương pháp Mamdani Về phương diện hình học, một mô hình ngôn ngữ có dạng một vùng mờ trong không gian X ൈ Y. Dưới tiếp cận Mamdani, vùng này được định nghĩa bởi hàm thuộc R xác định bởi lấy quan hệ mờ duy nhất Ri, i = 1,..., m là quan hệ có được từ các quan hệ cụ thể khác nhau sử dụng biểu thức (3.12); quan hệ R và Ri 53 được chỉ ra trong hình 3.6. Các phương pháp lý luận khác chỉ ra các hàm thuộc cụ thể cho quan hệ mờ R. Nếu tập hỗ trợ của tập mờ Bi và Di ngày càng hẹp hơn, chúng ta có thể sẽ có trường hợp hạn chế toàn bộ hệ thống mô hình như là một cặp đầu vào – đầu ra. 3.5. Mô hình ngôn ngữ với tập hợp các đầu ra Trước đây chúng tôi đã giới thiệu đầu ra của mô hình mờ là một tập mờ. Trong nhiều ứng dụng, đặc biệt trong điều khiển logic mờ, chúng ta cần mô hình đầu ra theo nghĩa là một tập hợp giá trị để có thể ứng dụng vào các hệ thống mô hình hóa. Nhằm đáp ứng điều này, chúng ta buộc phải giải mờ giá trị đầu ra F. Trong tài liệu [20], Yager và Filev đã cung cấp một thảo luận kỹ về quy trình giải mờ. Phương pháp thông dụng nhất thường được sử dụng trong các mô hình mờ là phương pháp trọng tâm (COA). Phương pháp này xác định giá trị được giải mờ là trọng tâm mờ: ( ) ( )* ( ) / ( )Y Yy yF y dy F y dy= ∫ ∫ (3.28) Với một U xác định, ta có: 1 1 * ( ) / ( ) q q i i i j j y y F y F y = = ⎛ ⎞ ⎛ ⎞= ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠∑ ∑ (3.29) Trong đó q là thành phần trong tập Y. Trong trường hợp khi một tập biểu diễn của mô hình đầu ra V được yêu cầu, thuật toán 1 và 2 nên được hoàn chỉnh bằng một bước bổ sung – tính toán giá trị tập hợp đầu ra y* dựa vào công thức (3.28) hoặc (3.29). Xem một cách chi tiết hơn các thuật toán cho thấy chúng vốn là phi tuyến tùy thuộc và việc sử dụng toán tử min và max; việc sử dụng các toán tử này không cho biểu thức phân tích quan hệ giữa các biến đầu ra và đầu vào. Để giảm hiệu ứng phi tuyến trong mô hình Mamdani có thể sử dụng toán tử nhân (là t - chuẩn) thay vì toán tử min. Như đã đề cập ở trước, kiểu suy diễn mờ này được biết đến là phương pháp Larsen. Từ đó, công thức tính giá trị mờ là: 1 1 ( ) ( ) ( ) m m i i i i i F y F y D yτ = = = =∨ ∨ (3.30) 54 Hình 3.7: Sơ đồ khối của cơ chế suy diễn đơn giản Để đơn giản hơn nữa, thường áp dụng trong các ứng dụng, để thay thế toán tử max sử dụng cho phép tích hợp các Fi bằng một phép cộng đơn [20]. Trong trường hợp này ta có: 1 1 ( ) ( ) ( ) m m i i i i i F y F y D yτ = = = =∑ ∑ (3.31) Rõ ràng việc sử dụng phép cộng có thể đưa tới độ thuộc của F(y) quá mức đơn vị. Tuy nhiên, nó không có ảnh hưởng đến giá trị giải mờ, do có việc chuẩn hóa trong công thức (3.28) và (3.29). Bằng việc tay thế cho F(y) trong công thức (3.29) chúng ta có giá trị giải mờ trọng tâm: 1 1 * * / m m i i i i y yτ τ = = ⎛ ⎞ ⎛ ⎞= ⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠∑ ∑ (3.32) Trong đó các yi là trọng tâm của mỗi tập mờ tương ứng với Di. Từ đó giá trị giải mờ COA suy ra bởi mô hình được xác định bằng trung bình trọng số của trọng tâm mỗi tập mờ riêng biệt tương ứng. Biểu thức trên của giá trị giải mờ được gọi là phương pháp suy diễn mờ đơn giản. Ưu điểm chính của việc thay thế max – aggregation bằng một hàm tổng là một cách đơn giản dẫn đến một định dạng đơn 55 giản của cơ chế suy diễn. Dạng đơn giản này cho phép một biểu thức phân tích cho quan hệ giữa các đầu và và đầu ra, và nó mở ra một khả năng để học các mô hình mờ từ dữ liệu. Cũng như từ biểu thức (3.32), giải thuật để xác định tập hợp giá trị đầu ra của mô hình Mamdani thông qua 2 bước: tính toán DOF, τi và các giá trị thay thế vào một công thức cuối cùng (3.32). Các toán tử của việc tìm kiếm tập mờ suy diễn bởi từng luật riêng biệt, việc kết hợp và giải mờ bị bỏ qua. Phương pháp suy diễn mờ đơn giản hóa được trình bày ở dạng sơ đồ khối trong hình 3.7. 3.6. Mô hình Takagi – Sugeno – Kang (TSK) 3.6.1. Mô hình Sugeno và các cộng sự [20] đề xuất một kiểu khác của mô hình hệ mờ, gọi là kiểu lập luận TSK (Takagi – Sugeno – Kang). Phương pháp lập luận TSK được kết hợp với một luật có định dạng đặc biệt mà được mô tả bởi hàm kiểu dãy thay vì một dãy mờ sử dụng trong LM ở phần trên. Trong kiểu mô hình này, luật có dạng: IF u1 là B11 AND … AND ur là B1r THEN y = b10 +b11u1+ … + b1rur ALSO … ALSO IF u1 là Bm1 AND … AND ur là Bmr THEN y = bm0 +b11u1+ … + b1rur Trong mô hình này, Bij, j = 1…r, i =1, …, m là các biến ngôn ngữ được định nghĩa như là các tập suy diễn mờ thông quan không gian vào X1, X2,…, Xr của một hệ MISO; u1, u2, …, ur là giá trị của các biến vào. Mỗi hàm tuyến tính trong phần kết luận của luật có thể được xem như một mô hình tuyến tính với tập các đầu vào u1, u2, …, ur, tập các đầu ra i và các biến bij, j = 1…r, i =1, …, m. Tập đầu ra y dịch bởi mô hình mờ theo phương pháp TSK được định nghĩa bằng trung bình trọng số của tập các đầu ra yi của từng hệ con tuyến tính. 0 1 1 ir 1 1 1 1 / ( ... ) / m m m m i i i i i r i i i i i y y b b u b uτ τ τ τ = = = = ⎛ ⎞ ⎛ ⎞= = + + +⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠∑ ∑ ∑ ∑ (3.33) Trong đó DOF của luật thứ i là: 1 1 1( ) ... ( )i i irB u B uτ = ∧ ∧ (3.34) 56 Về mặt hình học, các luật của mô hình lập luận TSK tương ứng với xấp xỉ ánh xạ X1, X2,…, Xr ՜ Y  bởi một hàm tuyến tính. Trong một thiết lập tổng quát các hàm tuyến tính trong một dãy các luật có thể được thay thế bởi các hàm phi tuyến. Trong trường hợp đó mô hình TSK trở thành một tập các luật có dạng: IF u1 là Bi1 AND … AND ur là Bir THEN yi = fi(u1,…,ur) (3.35) Trong đó đầu ra của các hệ thống con phi tuyến được kết hợp một cách tương tự vào các trường hợp biểu diễn tuyến tính (3.33). - Nếu fi(u1,…,ur) là một đa thức thì kết quả suy diễn được gọi là Mô hình mờ Sugeno dạng 1 - Nếu fi(u1,…,ur) là một hằng số thì nó là mô hình mờ Sugeno dạng 0 (trường hợp đặc biệt của mô hình Mamdani) Từ biểu thức (3.33) cho thấy phương pháp lập luận đơn giản hóa là một trường hợp đặc biệt của TSK trong đó bij = 0 với i = 1,.., m, j = 1,..., r. Trường hợp 2 luật với mô hình Sugeno dạng 1 thì: + Mỗi luật có một kịch bản đầu ra + Toàn bộ đầu ra có được bằng phương pháp tích hợp trọng số + Không cần phải giải mờ Một trong những khác biệt căn bản giữa mô hình Mamdani và TSK là phần kết luận của luật, tương ứng là mờ và bộ rõ nét. Do đó, các thủ tục tham gia vào việc tính toán của các tín hiệu đầu ra là riêng biệt. Nếu trường hợp kiến trúc mờ TSK thì đầu ra được tính toán với một công thức đơn giản (trung bình trọng số, trung bình tổng hợp) thì kiến trúc mờ Mamdani đòi hỏi một nỗ lực tính toán cao hơn vì nó cần thiết để tính toán toàn bộ hàm thuộc mà sau đó phải giải mờ. Đây chính là ưu điểm để tiếp cận TSK trở nên có ích hơn mặc dù Mamdani có bản chất trực quan hơn với nghĩa xử lý không chắc chắn. Ưu điểm lớn của mô hình TSK nằm trong sức mạnh đại diện của nó, đặc biệt là để mô tả các quy trình công nghệ phức tạp. Nó cho phép chúng ta đưa một hệ thống phức tạp vào hệ thống con đơn giản (ngay cả trong một số trường hợp là hệ thống phụ tuyến tính). Đây không phải là khái niệm, mà nó đã được phát triển từ 57 những năm 1970 qua một số kết quả của Rajbman và các cộng sự [18,19]. Các phương pháp tiếp cận các khái niệm được đề xuất bởi Rajbman là để đưa các không gian tổng thể của hệ thống vào những vùng riêng biệt, và phân biệt các hệ thống động của những vùng này với các vùng khác, thường là các mô hình phi tuyến (phân biệt mỗi loại với cấu trúc và các thông số của riêng nó). Điều này cho phép xem các đại diện của các mô hình tổng thể của một hệ thống phi tuyến như là một tập hợp các hệ thống con được kết hợp dựa trên một hàm lựa chọn (logic boolean). Tuy nhiên trên thực tế, sự phân chia như thế là không thể do việc thiếu biên tự nhiên trong hệ thống và cũng bởi vì sự đa dạng của tri thức tự nhiên về hệ thống. Mô hình TSK cho phép chúng ta thay thế phân hủy rõ nét của một phân hủy mờ, và để thay thế các chức năng chuyển đổi Boolean bởi cơ chế lý luận TSK. Hơn nữa, các mô hình TSK cho phép chúng ta giới thiệu các kiến thức của chuyên gia trong các phân vùng của đầu vào và không gian chung có thể đặc biệt hữu ích trong trường hợp vùng khác liên kết với điều kiện hoạt động khác nhau có thể được xác định bằng cách sử dụng các nhãn ngôn ngữ. 3.6.2. Một số ví dụ mô hình TSK đơn giản * Ví dụ 1: Mô hình Sugeno 1 đầu vào 1 đầu ra với 3 luật: IF X là nhỏ THEN Y=0.1X + 6.4 I F X là trung bình THEN Y=-0.5X + 4 I F X là lớn THEN Y = X-2 * Ví dụ 2: Mô hình Sugeno 2 đầu vào 1 đầu ra với 4 luật: R1: IF X là nhỏ và Y là nhỏ THEN z = - x+y+1 R2: IF X là nhỏ và Y là lớn THEN z = -y + 3 R3: IF X là lớn và Y là nhỏ THEN z = -x + 3 R4: IF X là lớn và Y là lớn THEN z = x + y + 2 R1 ՜ (x ר n) & (y ר nሻ ՜ w1 R2 ՜ (x ר n) & (y ר lሻ ՜ w2 R3 ՜ (x ר l) & (y ר nሻ ՜ w2 R4 ՜ (x ר l) & (y ר lሻ ՜ w2 58 Tích hợp các luật theo phương pháp trung bình trọng số: F[(w1,z1);(w2,z2);(w3,z3);(w4,z4)] Kết quả trên đồ thị như hình 3.8: Hình 3.8: Biểu diễn hình học của hệ suy diễn ở ví dụ 2 59 CHƯƠNG 4 – BỘ CÔNG CỤ LOGIC MỜ CỦA MATLAB VÀ CÀI ĐẶT THỬ THUẬT TOÁN 4.1. Giới thiệu chung môi trường MATLAB MATLAB (Matrix Laboratory) theo tên gọi của nó, là một công cụ phần mềm của MathWork, ban đầu được phát triển nhằm phục vụ chủ yếu cho việc mô tả các nghiên cứu kỹ thuật bằng toán học với những phần tử cơ bản là ma trận. Trong các lĩnh vực kỹ thuật chuyên ngành như điện và điện tử, vật lý hạt nhân, điều khiển tự động, robot công nghiệp, trong các ngành xử lý toán chuyên dụng như thống kê - kế toán và ngay cả trong lĩnh vực nghiên cứu về gen sinh học hay khí hậu và thời tiết… thường gặp những dữ liệu rời rạc (discret) ta có thể lưu trữ dưới dạng ma trận. Còn đối với dữ liệu liên tục (continuous) như âm thanh hình ảnh, hoặc đơn giản như các đại lượng vật lý tương tự (analog): điện áp, dòng điện, tần số, áp suất, lưu lượng… phải được biến đổi thành các tín hiệu số (digital) rồi mới tập hợp lại trong các file dữ liệu. Quá trình đó có thể được xử lý bằng các hàm toán học của Matlab [17]. Mức phát triển của Matlab ngày nay đã chứng tỏ nó là một phần mềm có giao diện cực mạnh cùng nhiều lợi thế trong kỹ thuật lập trình để giải quyết những vấn đề đa dạng trong nghiên cứu khoa học kỹ thuật. Trước hết, các câu lệnh của Matlab được viết rất sát với mô tả kỹ thuật khiến cho việc lập trình bằng ngôn ngữ này được thực hiện nhanh hơn, dễ hơn so với nhiều ngôn ngữ đã trở nên thông dụng như Pascal, Fortran… Những hàm sẵn có trong Matlab có cấu trúc thiết lập gần giống như ngôn ngữ C, bởi vậy người dùng không mất nhiều thì giờ học hỏi khi đã nắm bắt được những vấn đề cơ bản của một số ngôn ngữ lập trình thông dụng. Tiếp theo, Matlab không chỉ cho phép đặt vấn đề tính toán mà còn có thể xử lý dữ liệu, biểu diễn đồ hoạ một cách mềm dẻo, đơn giản và chính xác trong không gian 2D cũng như 3D, kể cả khả năng tạo hoạt cảnh cho những mô tả sinh động, bởi những công cụ như các thư viện chuẩn, các hàm có sẵn cho các ứng dụng đa dạng, các tệp lệnh ngày càng được mở rộng bởi 25 thư viện trợ giúp (Toolbox) và bản thân các hàm ứng dụng được tạo lập bởi người sử dụng. Không cần kiến thức nhiều về máy tính cũng như kỹ thuật lập trình có tính xảo thuật, mà chỉ cần đến những hiểu biết cơ bản về lý thuyết số, toán ứng dụng, phương pháp tính và khả 60 năng lập trình thông dụng, người sử dụng đã có thể dùng Matlab như một công cụ hữu hiệu cho lĩnh vực chuyên ngành của mình. Sau hết, việc cài đặt Matlab thật là dễ dàng. Ta chỉ cần chú ý đôi chút nếu muốn dùng thêm các thư viện trợ giúp như Simulink, FLT, DSI – Digital Signal Processing hay muốn tích hợp phần mềm này với một vài ngôn ngữ quen thuộc của người sử dụng như C, C++, Fortran… Matlab ngày nay đã trở nên thông dụng và là một công cụ trợ giúp hữu hiệu cho các nhà chuyên môn, những sinh viên đang theo học trong các trường đại học và trung học chuyên nghiệp, các kỹ sư, các cán bộ kỹ thuật… nhằm giải quyết các vấn đề rất đa dạng trong công việc thường ngày của họ. Matlab được điểu khiển bởi các tập lệnh, tác động qua bàn phím. Nó cũng cho phép một khả năng lập trình với cú pháp thông dịch lệnh – còn gọi là Script file. Các lệnh hay bộ lệnh của Matlab lên đến hàng trăm và ngày càng được mở rộng bởi các phần ToolBox (thư viện trợ giúp) hay thông qua các hàm ứng dụng được xây dựng từ người sử dụng. FLT là một phần mở rộng của Matlab, sử dụng để mô phỏng các hệ thống Mờ một cách nhanh chóng và tiện lợi. 4.2. Bộ công cụ Logic Mờ (Fuzzy logic toolbox) 4.2.1. Giới thiệu Bộ công cụ Logic mờ (Fuzzy Logic Toolbox – FLT) cung cấp cho người sử dụng một hệ thống thiết kế và phân tích dựa trên logic Mờ. Nó có đầy đủ các phiên của quá trình suy diễn, bao gồm như : phát triển, nghiên cứu, thiết kế, mô phỏng và suy diễn tính toán. Giao diện đồ hoạ với người sử dụng (GUI) cung cấp một môi trường trực quan để hướng dẫn người sử dụng từng bước thiết kế hệ suy diễn Mờ. Nhiều phương pháp của Logic Mờ cung cấp cho người dùng thông qua các hàm như phương pháp phân lớp và luyện mạng nơron. Trong Matlab FLT cho phép tạo và hiệu chỉnh các hệ suy diễn Mờ. Người sử dụng có thể dễ dàng sử dụng các công cụ đồ hoạ hay các hàm trực tiếp từ cửa sổ lệnh để tạo xây dựng hệ suy diễn, hoặc người sử dụng cũng có thể tạo chúng tự 61 động bằng cách sử dụng hoặc kỹ thuật phân cụm hoặc Adaptive - kỹ thuật Mờ nơ ron. GUI (Graphical User Interfaces) GUIs trong FLT cho phép ta thiết lập hai kiểu hệ thống mờ : - Hệ suy diễn Mờ (FIS - Fuzzy Inference System): Suy diễn Mờ là một phương pháp thông dịch giá trị của véc tơ đầu vào, dựa trên các luật được định nghĩa để xác định giá trị của các véc tơ đầu ra. FLT cung cấp cho ta một tập hợp các trình soạn thảo GUI cho phép xây dựng một FIS. Các trình soạn thảo và quan sát được sử dụng để xây dựng tập luật, xác định hàm thuộc và phân tích hoạt động của FIS. Hình 4.1: Cửa sổ soạn thảo phân lớp Mờ- Neuron thích nghi - Hệ suy diễn Mờ - Neuron thích nghi (Adaptive neuron - Fuzzy Inference System - ANFIS): Đây là giao diện đồ hoạ tách riêng cung cấp chức năng cho việc phân nhóm Mờ. ANFIS cho phép ta định dạng hàm thuộc dựa vào việc huấn luyện các dữ liệu đầu vào bằng máy tính. ANFIS chỉ sử dụng thuật toán lan truyền ngược hoặc nó kết hợp cùng với phương pháp bình phương cực tiểu. Điều này cho phép hệ Mờ học từ tập dữ liệu mà đã được thiết kế. Ngoài ra, người sử dụng có thể kiểm tra hệ thống Mờ của mình bằng việc mô hình hoá trong công cụ Simulink. Điều đặc biệt của FLT là có tính Mở, cho phép dễ dàng hiệu chỉnh cấu trúc của hệ suy diễn Mờ. Do đó FLT được thiết kế cho phép người sử dụng có thể tự tạo các hàm phù hợp theo hệ thống của riêng mình dưới dạng các hàm của Matlab, và 62 có thể thay thế cho các hàm được thiết kế sẵn trong Matlab. Cụ thể như là FLT cho phép người sử dụng hiệu chỉnh các hàm thuộc, các phép kéo theo, các toán tử logic AND hoặc OR, phép kết nhập và phép giải Mờ. Hình 4.2: Hệ thống suy diễn Mờ được thiết kế bằng Simulink Bộ thư viện công cụ cũng cho phép người sử dụng viết chương trình trực tiếp bằng ngôn ngữ lập trình cấp cao C một cách trực tiếp mà không cần Simulink (mô hình hoá). Nhờ tính mở của môi trường làm việc Matlab, cho phép người sử dụng có thể tạo ra các công cụ riêng cho FLT hay tích hợp với các bộ thư viện công cụ khác, ví dụ như: Hệ thống điều khiển (Control System),Mạng Nơron (Neuron Network) Bộ công cụ tối ưu hoá (Optimization Toolbox) Khả năng mô hình hoá các quan hệ phức tạp như là một tập các luật đơn giản làm cho logic Mờ trở thành một phương pháp để mô hình hoá và điều khiển các hệ thống phức tạp, phi tuyến. Khi việc thể hiện mô hình toán học của một hệ thống là không thể được thì FLT cho phép người sử dụng sử dụng tập luật để mô tả các hoạt động của hệ thống. Các luật này đã sử dụng phép kéo theo trong hệ suy diễn Mờ để tạo ra mô hình Mờ của hệ thống. Giống như các thư viện khác của Matlab, FLT có thể tuỳ biến. Người sử dụng có thể đễ dàng hiệu chỉnh mã nguồn, thuật giải hay thêm vào các hàm thuộc, phép kéo theo, phép giải Mờ riêng. Hoặc là người sử dụng cũng có thể sử dụng thự viện như là mô tơ suy diễn riêng biệt. Mặt khác, ta có thể tạo ra các khối công việc bên trong công cụ Simulink, cho phép người sử dụng mô phỏng hệ thống Mờ trong phạm vi mô hình vật lý toàn diện của hệ thống. Ta có thể sử dụng Real-Time Workshop để tạo ra mã nguồn file C, có thể được sử dụng 63 cho xPC Target hay dùng cho mục đích xử lý tốc độ phép toán dấu phảy động. FLT trong Matlab giải quyết được các vấn đề như: - Tạo và soạn thảo các hệ thống suy diễn Mờ bằng các cách: + Thông qua giao diện người sử dụng đồ hoạ: GUI + Dùng các khối dòng lệnh + Cho phép tích hợp hệ thống Mờ (suy diễn Mờ) với công cụ Simulink + Xây dựng suy diễn Mờ bằng công cụ C (gọi từ ngôn ngữ lập trình C đến Matlab). 4.2.2. Các tính năng cơ bản của FLT - Hỗ trợ việc tuỳ biến các luật và hàm thuộc để tạo ra hệ suy diễn Mờ. - Bộ GUIs (giao diện đồ hoạ với người sử dụng ) riêng để vận dụng cho các hệ thống đồ hoạ, xem và phân tích kết quả tương tác. - Xây dựng hệ suy diễn chuẩn kiểu Mamdani và Sugeno - Sự quyết định của các hàm thuộc chuẩn thông qua kỹ thuật luyện mạng neuron thích nghi và phân nhóm Mờ. - Khả năng nhúng một hệ suy diễn Mờ vào mô hình Simulink sử dụng khối điều khiển Logic Mờ (Fuzzy Logic Controller). - Khả năng tạo ra các tệp C một cách linh động thông qua Real-Time Workshop. - Mô tơ Logic Mờ sử dụng mã nguồn file C cho phép ta định dạng suy diễn Mờ một cách độc lập hoặc nhúng vào các trình ngoại trú khác. 4.2.3. Xây dựng hệ suy diễn bằng GUI của FLT Trong FLT, hệ suy diễn Mờ gồm 5 phần: Mờ hoá biến vào, áp dụng các toán tử Mờ cho các giả thiết, áp dụng phép kéo theo cho từng giả thiết đến kết quả, gộp các kết quả bằng bộ luật và giải Mờ. Trong môi tường Matlab, một hệ thống suy diễn Mờ hoàn chỉnh cung cấp cho ta 5 phần: 64 Hình 4.3: Mô hình cấu trúc GUI trong Matlab - Bộ soạn thảo (FIS Editor): hiển thị các thông tin chung về một hệ suy diền Mờ: bao nhiêu biến vào, bao nhiêu biến ra, tên các biến. FLT không giới hạn số lượng biến vào, tuy nhiên, số lượng biến vào phải phụ thuộc vào bộ nhớ cho phép của máy tính. Nếu số lượng biến vào quá lớn hoặc số lượng hàm thành viên quá nhiều thì có thể khó phân tích khi sử dụng công cụ GUI. - Bộ soạn thảo hàm thuộc (Membership function Editor) được sử dụng để định nghĩa dạng của các hàm thuộc ứng với từng biến. - Bộ soạn thảo luật (Rule Editor) dùng để soạn thảo danh sách các luật - xác định hành trạng của hệ thống. - Quan sát luật và quan sát bề mặt được sử dụng để quan sát. Trái với soạn thảo, đây là công cụ chỉ đọc. Quan sát luật là là một hình ảnh cơ sở của Matlab hiển 65 thị đồ thị suy diễn Mờ trong giai đoạn sau cùng. Nó có thể chỉ ra hoạt động của các luật, chỉ ra ảnh hưởng của các hàm thuộc như thế nào đối với kết quả trả về. Quan sát bề mặt cho phép hiển thị độc lập một biến ra và một hoặc hai biến vào 4.2.4. Cấu trúc của hệ suy diễn mờ trong Matlab Cấu trúc của FIS (Fuzzy Inference System) là một đối tượng của Matlab trong đó bao gồm tất cả các thông tin về hệ suy diễn. Cấu trúc này được lưu trữ bên trong mỗi công cụ GUI. Các hàm truy nhập như là getfis, setfis sẽ cho ta dễ dàng kiểm tra cấu trúc này. Ta cũng có thể lấy các thông tin của một cấu trúc Fis bằng cách sử dụng cú pháp structure.field. Mọi thông tin của một hệ suy diễn đưa ra được chứa đựng trong cấu trúc FIS bao gồm như tên biến, hàm thuộc xác định… Ta có thể xem mô hình của cấu trúc FIS trong bộ công cụ Logic mờ bao gồm các thành phần như sau: FIS name type andMethod orMethod defuzzyMethod impMethod aggMethod input output rule Input name range mf Output name range mf Rules antecedent consequent weight connections Input 1 MFs name type params Input 2 MFs name type params Output MFs name type params Hình 4.4: Cấu trúc FIS Bên cạnh cách xây dựng hệ suy diễn mờ dựa vào bộ công cụ giao tiếp với người sử dụng GUI một cách thuận tiện thì bộ công cụ Logic Mờ cũng cung cấp cho người sử dụng các hàm, lệnh để truy nhập và làm việc trực tiếp từ cửa sổ lệnh của Matlab. 4.3. Bài toán ví dụ và cài đặt thử thuật toán 1, 2 66 4.3.1. Bài toán điều khiển tín hiệu đèn giao thông Điều khiển và kiểm soát giao thông thành phố đang trở thành một vấn đề lớn ở nhiều nước. Với số lượng ngày một tăng của xe trên đường, Bộ Giao thông vận tải là cơ quan đã tìm nhiều cách hoặc biện pháp khắc phục mới. Các biện pháp đang phát triển các tuyến đường mới ở giữa thành phố; xây dựng đường vòng. Ví dụ như đường vòng trong, vòng giữa đường bộ và đường vòng ngoài; giới thiệu xe lửa thành phố như vận chuyển nhanh nhẹ; hạn chế xe lớn trong thành phố trong giờ cao điểm, và cũng có thể phát triển của các điều khiển giao thông tinh vi và hệ thống điều khiển. Đối với bài toán điều chỉnh thời đèn xanh, đỏ tại ngã tư đường đã có nhiều phương pháp được áp dụng [15], trong đó các phương pháp tuân theo logic cổ điển vẫn thường được dùng hiện nay là hai phương pháp: - Điều chỉnh theo thời gian: tức là đối với bài toán đặt ra tại các ngã tư đường có mức độ ưu tiên như nhau thì việc điều chỉnh đèn sẽ tuỳ vào thời gian cao điểm trên đoạn đường đó mà có thể thêm hoặc bớt thời gian đèn xanh, đỏ. - Điều chỉnh theo hướng: tức là đối với các ngã tư có phân biệt mức độ ưu tiên. Với hướng có mức độ ưu tiên cao thì thời gian đèn xanh nhiều hơn, và ngược lại. Bên cạnh đó cũng có xét thêm về yếu tố thời gian cao điểm. Ngoài ra, còn nhiều phương án cũng kết hợp vói nhiều các yếu tố liên quan hơn như khoảng cách rộng của ngã tư,… Song có một vấn đề đặt ra là việc áp dụng các phương pháp trên nhiều khi rất bất lợi. Bởi vì việc thống kê số liệu liên quan đến bài toán trên từng ngã tư là khác nhau, dẫn đến việc thống kê không chính xác do đó làm cho thời gian chết tại các ngã tư nhiều. Việc tính toán lượng xe đi lại vào giờ cao điểm không phải luôn đúng với mọi ngày trong tuần hay với mọi ngày trong năm… Đã có phương pháp để nghiên cứu giải pháp cho các vấn đề trên là các chuyên gia áp dụng phương pháp thích nghi (adaptation). Trong phương pháp này, người ta không cố định thời gian T đèn xanh nhất định, mà biến TN là thời gian đèn xanh ở một thời điểm thứ N nào đó, và TN không phải là một hằng số. TN khác nhau phụ thuộc vào lượng xe thông qua ở một số thời điểm trước nó. Tức là thời gian TN sẽ được xác định bằng cách quan sát ở k thời điểm trước đó. Đây còn gọi là phương án Markov. 67 Nếu sử dụng phương pháp này thì vẫn phải tiến hành các công việc như quan sát trước và dùng cách thức định tính. Hơn nữa, khó có thể sử dụng để tính toán và ước lượng cho nhiều yếu tố bất định có thể xảy ra trong thực tế như: thời tiết, giờ cao điểm,… Vì vậy, việc áp dụng phương pháp suy diễn mờ cho phép làm việc với các biến ngôn ngữ, tính toán theo một xác xuất lớn sẽ cho kết quả tốt hơn các phương pháp khác. Bài toán lập hệ suy diễn để điều chỉnh thời gian đèn xanh đèn đỏ tại ngã tư - đường cao tốc có chú ý ưu tiên một trong một số tình huống như: lượng xe từ các hướng Đông, Tây, Nam Bắc, thời tiết, giờ cao điểm … dẫn đến cần các thuật giải suy diễn Mờ. Đây là một trong những ví dụ thường thấy trong nghiên cứu và áp dụng các thuật toán suy diễn mờ được nhiều người quan tâm. Trước đây, người ta áp dụng các thuật toán suy diễn dạng Max-min (Mandani) và Max-Prod (Sugeno) trong đó sử dụng các t-chuẩn, t-đối chuẩn thông thường. Trong [15], Kok Khiang Tan và các cộng sự đã giới thiệu một phần mềm thực hiện một hệ thống kiểm soát giao thông thông minh đèn sử dụng công nghệ logic mờ có khả năng bắt chước trí thông minh của con người cho phép điều khiển đèn giao thông. Ở giới hạn của luận văn này chỉ xin giới thiệu lại thiết kế bài toán kiểm soát đèn giao thông và sử dụng bộ luật để cài đặt thử cho thuật toán suy diễn 1 và 2 (đã giới thiệu trong chương III). 4.3.2. Tiêu chí và ràng buộc Giả sử thiết lập các tiêu chí cho hệ giao thông như sau: i) Ngã tư là bốn đường giao nhau với đường giao thông đến từ phía bắc, tây, nam và phía đông; ii) Khi giao thông từ phía Bắc và di chuyển về phía Nam, giao thông từ phía Tây và Đông dừng lại, và ngược lại; iii) Không có quyền rẽ trái; iv) Bộ điều khiển logic mờ sẽ quan sát mật độ giao thông phía Bắc và phía Nam là một bên và mật độ phía Tây và phía Đông như một bên khác; v) Làn xe Đông - Tây được giả thiết như là cách tiếp cận chính; 68 vi) Thời gian tối thiểu và tối đa của đèn màu xanh là 2 giây và 20 giây tương ứng. 4.3.3. Thiết kế bộ điều khiển giao thông mờ Một bộ điều khiển logic mờ được thiết kế cho một ngã 4: bắc, nam, đông và tây như trong hình. Trong điều khiển đèn giao thông hai biến đầu vào mờ được lựa chọn: lưu lượng xe bên đến (Arrival) và số lượng xe bên hàng đợi (Queue). Nếu phía bắc và phía nam là màu xanh lá cây thì hướng này sẽ là Arrival trong khi bên phía tây và phía đông sẽ được coi như là Queue và ngược lại. Biến ra mờ biến sẽ là gia hạn thời gian cần thiết cho ánh sáng màu xanh lá cây ở bên đến (Extension). Như vậy dựa trên các điều kiện giao thông hiện tại của các luật mờ có thể được xây dựng sao cho đầu ra của bộ điều khiển mờ sẽ kéo dài hoặc không kéo dài thời gian của đèn màu xanh. Nếu không có gia hạn thời gian trạng thái đèn xanh hiện tại, đèn giao thông ngay lập tức sẽ thay đổi sang pha khác. 4.3.3.1. Hàm thuộc của biến vào và biến ra Với bộ điều khiển tín hiệu đèn giao thông, có 4 hàm thuộc cho mỗi biến vào và ra của hệ thống. Bảng sau chỉ ra các biến mờ của các biến Arrival, Queue và Extention, sử dụng chữ cái đầu để viết tắt cho các biến mờ. Arrival Queue Extention Almost AN Very small VS Zero Z Few F Small S Short S Many MY Medium M Medium M Too many TMY Large L Longer L 69 Biểu diễn hình học cho các hàm thuộc của biến vào trong hình: Hình 4.5: Hàm thuộc biến mờ của biến vào Arrival Hình 4.6: Hàm thuộc biến mờ của biến vào Queue Hình 4.7: Hàm thuộc biến mờ của biến ra Extention Trục y biểu diễn cho giá trị độ thuộc của mỗi biến mờ. Đối với các biến vào mờ trên trục x là một tín hiệu cảm biến số lượng xe. Với biến ra là chiều dài thời gian được kéo dài trong vài giây. Thiết kế cho các hàm thuộc này được thực hiện theo quan sát của các chuyên gia hệ thống và môi trường. Tuy nhiên, độ rộng và trọng tâm của các hàm thuộc có thể dễ dàng thay đổi và thiết kế lại theo các điều kiện và trạng thái giao thông khác nhau. 70 Ví dụ nếu đường giao nhau là quá tắc nghẽn, số lượng xe ô tô trong tập con mờ "Quá nhiều" hay "lớn" là cần được tăng lên. Mặt khác, đường giao nhau rộng và ít nghẽn thì chiều rộng hàm thuộc có thể được giảm bớt... Ta có thể quan sát thấy rằng trong điều khiển logic mờ sự chuyển đổi từ một tập con mờ khác được thực hiện dễ dàng từ một hành động kiểm soát này sang hành động khác, vì thế, cần có những những tập con mờ trùng nhau. Nếu không có sự chồng chéo trong các tập con mờ thì các hành động kiểm soát sẽ bị tương tự như điều khiển hoӘa trị hai (điều khiển từng bước). Mặt khác nếu có quá nhiều chồng chéo trong các tập con mờ, sẽ có rất nhiều việc mờ hóa và điều này làm nhiễu các hành động điều khiển 4.3.3.2. Bộ luật mờ Cơ chế suy diễn trong các bộ điều khiển logic mờ khá giống với quá trình lập luận của con người. Dựa vào ý kiến các chuyên gia trong việc kiểm soát lưu lượng nhiều hơn hoặc ít hơn ta có dạng luật theo cách sau: IF giao thông từ phía bắc của thành phố là ĐÔNG AND giao thông từ phía tây là VẮNG THEN thời gian cho phép chuyển động giao thông từ phía bắc là DÀI. Hoặc 1 luật khác: IF giao thông từ phía bắc của thành phố là TRUNG BÌNH AND giao thông từ phía tây là TRUNG BÌNH THEN cho phép chuyển động của cả 2 bên là BÌNH THƯỜNG Điểm mạnh của logic mờ là có thể sử dụng các lý luận gần đúng trong các quy tắc như ĐÔNG, VẮNG, TRUNG BÌNH, BÌNH THƯỜNG, DÀI, v.v. Dựa vào thiết kế các hàm thuộc mờ, các biến như ngôn ngữ, mặc dù mờ trong tự nhiên, nhưng vẫn có thể thực hiện trong máy tính thông qua công nghệ logic mờ. Trong phát triển bộ điều khiển logic mờ, chúng ta sử dụng các luật tương tự như một số ví dụ được đưa ra dưới đây: Nếu có quá nhiều xe ô tô (TMY) ở phía bên đến và rất nhỏ, số lượng xe ô tô (VS) xếp hàng thì thời gian thêm cho đèn màu xanh là dài (L). Nếu có hầu như không có xe ô tô (AN) ở phía bên đến và rất nhỏ số lượng xe ô tô (VS) ở bên đợi thì không thêm thời gian đèn màu xanh (Z). 71 Các luật này có thể được rút ngắn như sau: Nếu ARIVAL là TMY và QUEUE là VS THEN Extension là L NẾU ARIVAL là F và QUEUE là VS THEN Extension là S NẾU ARIVAL là AN và QUEUE là VS THEN Extension là Z Trong đó "ARIVAL" và "QUEUE" là những giả thiết và "Extention" của đèn xanh là kết luận. Các luật này có thể dễ dàng phát triển theo các điều kiện giao thông tại ngã tư và để đơn giản ta biểu diễn các quy tắc này trong một ma trận: ARIVAL Q U EU E AN F MY TMY VS Z S M L S Z S M L M Z X S M L Z Z Z S Tương ứng với ma trận luật trên cho ta bộ 16 luật điều khiển tín hiệu đèn giao thông trong hệ suy diễn mờ: 1. If (Arival is AN) and (QUEUE is VS) then (Extention is Z) 2. If (Arival is AN) and (QUEUE is S) then (Extention is Z) 3. If (Arival is AN) and (QUEUE is M) then (Extention is Z) 4. If (Arival is AN) and (QUEUE is L) then (Extention is Z) 5. If (Arival is F) and (QUEUE is VS) then (Extention is S) 6. If (Arival is F) and (QUEUE is S) then (Extention is S) 7. If (Arival is F) and (QUEUE is M) then (Extention is Z) 8. If (Arival is F) and (QUEUE is L) then (Extention is Z) 72 9. If (Arival is MY) and (QUEUE is VS) then (Extention is M) 10. If (Arival is MY) and (QUEUE is S) then (Extention is M) 11. If (Arival is MY) and (QUEUE is M) then (Extention is S) 12. If (Arival is MY) and (QUEUE is L) then (Extention is Z) 13. If (Arival is TMY) and (QUEUE is VS) then (Extention is L) 14. If (Arival is TMY) and (QUEUE is S) then (Extention is M) 15. If (Arival is TMY) and (QUEUE is M) then (Extention is M) 16. If (Arival is TMY) and (QUEUE is L) then (Extention is S) Thiết kế hệ suy diễn với bộ luật trên đây vào FLT, cấu trúc FIS dạng Mamdani – thuật toán 1 - sau khi thiết kế có nội dung: Name = traffic Type = mamdani NumInputs = 2 InLabels = Arival QUEUE NumOutputs = 1 OutLabels = Extention NumRules = 16 AndMethod = min OrMethod = max ImpMethod = min AggMethod = max DefuzzMethod = centroid 73 cho ta kết quả biểu diễn bằng hình học như trong hình 4.8. Hình 4.8: Biểu diễn hình học của hệ suy diễn dạng Mamdani Với hệ suy diễn trên, nếu áp dụng phương pháp lập luận logic – thuật toán 2, kết quả xác định mức đốt của mỗi luật và việc tích hợp các tập mờ đầu ra khác đi sẽ cho kết quả như sau: Hình 4.9: Biểu diễn hình học của hệ suy diễn dạng lập luận logic 74 KẾT LUẬN Sau thời gian nghiên cứu và thực hiện đồ án, dưới sự hướng dẫn tận tình của thầy giáo PGS.TSKH. Bùi Công Cường, em đã hoàn thành yêu cầu của luận văn tốt nghiệp là tìm hiểu các phép toán cơ bản của logic mờ nói chung và một số quy trình suy diễn mờ nói riêng. Luận văn đã được tập trung mở rộng tìm hiểu các phương pháp lập luận xấp xỉ trong hệ mờ dựa trên cơ sở các luật mờ, trong đó hệ mờ dạng TSK là một mô hình được tìm hiểu có nhiều ưu điểm và tính năng mới. Để hoàn thành đề tài trên, em đã thực hiện: nghiên cứu các tài liệu có liên quan đến đề tài (xem danh mục tài liệu tham khảo); Tham gia sinh hoạt Xemina tại Viện Toán học Hà nội; Nghe các buổi chuyên đề tại khoa Toán ứng dụng, Đại học Bách Khoa Hà Nội; Tham dự hội thảo trường thu "Hệ mờ và ứng dụng" lần thứ 1,2,3 tại Hà Nội; Tham khảo nghiên cứu sử dụng phầm mềm Matlab… Một phần kết quả từ những nghiên cứu bước đầu này đã được trình bày trong 03 bài báo (xem danh mục công trình của tác giả). Từ các kết quả nghiên cứu này cho phép đưa các thuật toán suy diễn cài đặt vào trong các bộ điều khiển mờ, không cần khảo sát lại các đặc tính toán học chung của thuật toán nữa mà chỉ phải xét tới các đặc điểm riêng của bài toán thực tế. Các thuật toán này có thể được kết hợp với mạng nơ-ron mờ hoặc đưa vào các ứng dụng trí tuệ nhân tạo (như hệ chuyên gia, hệ hỗ trợ quyết định, ...) giúp cho hệ thống suy diễn cho một kết quả đúng đắn và chính xác hơn, phù hợp với yêu cầu của người chuyên gia và yêu cầu thực tế của hệ thống suy diễn. Các thuật toán này khi dùng bộ công cụ Simulink của Matlab có thể được sử dụng để cài đặt vào bộ điều khiển với các senso nhận tín hiệu điều khiển bên ngoài như các biến đầu vào và các giá trị ngưỡng. Đây là một ứng dụng được rất nhiều chuyên gia trong các ngành điện tử, công nghệ thông tin qua tâm. Tuy vậy, phần lớn các kết quả đạt được trong quá trình nghiên cứu mới chỉ dừng lại ở mức độ lý thuyết và thử nghiệm. Để có thể áp dụng được trong thực tế thì còn cần phải khảo sát, phân tích kỹ và mô hình hoá đối với từng bài toán cụ thể. Đây chính là bước phát triển tiếp theo của đề tài mà do hạn chế về thời gian thực hiện và kiến thức của tác giả nên còn chưa được triển khai. Ngoài ra, mở rộng bổ sung bộ công cụ Logic Mờ và kết hợp với bộ công cụ Neuron Network Toolbox trong Matlab sẽ là hướng phát triển tiếp theo của đề tài, với mong muốn tạo ra được các bộ điều khiển, ứng dụng suy diễn Mờ vào trong nhiều lĩnh vực của khoa học và kỹ thuật. 75 DANH MỤC CÔNG TRÌNH CỦA TÁC GIẢ 1. Bùi Công Cường và Hồ Khánh Lê – Một số thuật toán suy diễn mờ và bộ công cụ Logic Mờ của Matlab (phần I) – Preprint 2002/17. Viện Toán học Hà Nội, 05/2002. 2. Bui Cong Cuong, Nguyen Hoang Phuong, Ho Khanh Le, Bui Truong Son and Le Quang Phuc - Adding some new fuzzy Inference Methods to “Fuzzy Logic Toolbox” of Matlab. In Proceeding of the Third International conference on Intelligent technologies and Third Vietnam – Japan Symposium on Fuzzy Systems and Applications, INTECH/VJFUZZY’2002, CNRS, 2002, pp 143-148. 3. Bui Cong Cuong, Nguyen Hoang Phuong, Ho Khanh Le, Bui Truong Son, and Koichi Yamada (2003) - Fuzzy Inference Methods Employing T-norm with threshold and their Implementation, J. Advanced computational Intelligence and Intel. Informatics 7(2003), N03, pp 362-369. 76 TÀI LIỆU THAM KHẢO Tiếng Việt 1. Bùi Công Cường và Nguyễn Doãn Phước (2001), Hệ Mờ, mạng Neuron và ứng dụng, NXB Khoa học Kỹ thuật, Hà Nội, 2001. 2. Bùi Công Cường (2000), Kiến thức cơ sở của Hệ Mờ, Trường thu “Hệ Mờ và ứng dụng” lần thứ nhất, Viện Toán học, Hà Nội, 8/2000. 3. Bùi Công Cường và Hồ Khánh Lê (2002), “Một số thuật toán suy diễn mờ và bộ công cụ Logic Mờ của Matlab (phần I)” , Preprint 2002/17, Viện Toán học Hà Nội, 05/2002. 4. Đặng Minh Hoàng (2000), Đồ họa với Matlab5.3, NXB Thống kê, TPHCM, 2000 5. Hồ Khánh Lê (2002), Bước đầu tìm hiểu và cài đặt bổ sung bộ công cụ Logic Mờ của Matlab, Đồ án tốt nghiệp, Khoa công nghệ tin học, Viện Đại học Mở Hà Nội, 2002. 6. Phạm Văn Lợi (2001), Một số dạng suy rộng của phép hội, phép tuyển, phép kéo theo trong logic mờ và một vài ứng dụng, Luận văn Thạc sỹ toán học, Viện toán học, 2001. 7. Phan Xuân Minh, Nguyễn Doãn Phước (1997), Lý thuyết điều khiển Mờ, NXB Khoa học và Kỹ thuật, Hà Nội, 1997. 8. Nguyễn Hoàng Phương, Bùi Công Cường, Nguyễn Doãn Phước, Phan Xuân Minh và Chu Văn Hỷ (1998), Hệ Mờ và ứng dụng, NXB Khoa học Kỹ thuật, Hà Nội, 1998. 9. Nguyễn Trọng Thuần (2000), Điều khiển Logic và ứng dụng, tr. 119-181, NXB Khoa học và Kỹ thuật, Hà Nội, 2000 10. Nguyễn Hữu Tình, Lê Tấn Hùng, Phạm Thị Ngọc Yến, Nguyễn Thị Lan Hương (2001), Cơ sở Matlab và ứng dụng, NXB Khoa học Kỹ thuật, Hà Nội, 2001. Tiếng Anh 11. Bui Cong Cuong (2002) – “Some Computing Procedure in Fuzzy System” - The Proceeding of the school on Scientific Computing and Applications, March 4-6, 2002, HCM University Technology, pp. 117-127. 12. Bui Cong Cuong, Nguyen Hoang Phuong, Ho Khanh Le, Bui Truong Son and Le Quang Phuc (2002), “Adding some new fuzzy inference methods to 77 “Fuzzy Logic Toolbox” of Matlab”, Proceeding of the Third International conference on Intelligent technologies and Third Vietnam – Japan Symposium on Fuzzy Systems and Applications, INTECH/VJFUZZY’2002, CNRS, 2002, pp 143-148. 13. Bui Cong Cuong, Nguyen Hoang Phuong, Ho Khanh le, Bui Truong Son, and Koichi Yamada (2003), “Fuzzy inference methods employing T-norm with threshold and their implementation”, J. Advanced computational Intelligence and Intel. Informatics, 7(2003), N03, pp 362-369. 14. Duane Hanselman, Bruce Littlefield (1996) – Mastering Matlab 5 – International Edition, 1996. 15. Jyh-Shing, Joger Jang (1993), “ANFIS: Adaptive - network – based fuzzy inference system”, IEEE transactions on systems, Man, and Cybernetic, Vol. 23, No. 3, May-June 1993. 16. Kok Khiang Tan, Marzuki Khalid and Rubiyah Yusof (1996), “Intelligent traffic lights control by fuzzy logic”, Malaysian Journal of Computer Science, Vol. 9 No. 2, December 1996, pp. 29-35. ISSN 0127-9084. 17. Matlab – Graph (User’s guide). 18. Nobuyuki NAKAJIMA (2001) , “ Fuzzy logics and t-norms”, Proceeding of the second Vietnam-Japan Symposium on Fuzzy Systems and Applications. VJFUZZY’2001, pp. 34- 39. 19. Sugeno, M. and Kang, G. T (1986). “Fuzzy modeling and control of multilayer incinerator”, Fuzzy Sets and Systems, Volume 18 , Issue 3 , Elsevier North-Holland (April 1986), pp. 329-346. 20. Ronald R.Yager and Dimitar P.Filev (1998), Sugeno, M. and Nguyen H. T. (Eds), “Fuzzy rule based models and apprroximate reasoning”, Fuzzy system: modelling and control, Kluwer Academic, Boston 1998, pp. 91-133. 21. Ronald R. Yager, Dimitar Filev (1993), “On the issue of defuzzification and selection based on a fuzzy set”, Fuzzy Sets and Systems, Volume 55, Issue 3, Elsevier North-Holland, 10 May 1993, pp. 255-271.

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

  • pdfLUẬN VĂN- MỘT SỐ QUY TRÌNH SUY DIỄN TRONG HỆ MỜ.pdf