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.
84 trang |
Chia sẻ: lylyngoc | Lượt xem: 5624 | Lượt tải: 1
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:
- LUẬN VĂN- MỘT SỐ QUY TRÌNH SUY DIỄN TRONG HỆ MỜ.pdf