Categories
Fuzzy Controller

Fuzzy Inference

Suy diễn mờ

Suy diễn mờ hay nói một cách dễ hiểu là cách mà ta xác định hay xây dựng được tập mờ ngõ ra từ một hay nhiều giá trị từ các tập mờ ngõ vào. Trong điều khiển có nhiều cơ chế suy diễn tả thông dụng như MAX – MIN, MAX – PROD, SUM – MIN và SUM – PROD. Trong Chapter này chúng ta sẽ đề cập đến 2 cơ chế suy diễn mờ thông dụng nhất đó làm suy diễn mờ MAX-MIN và suy diễn mờ MAX-PROD.

Suy diễn mờ MAX – MIN

Ta sẽ xét một cách tổng quát, luật thứ K của bộ luật mờ (Chapter E). Ta có:

RK: Nếu x1 = A1 và x2 = A2 thì y = C

Áp dụng ở luật mờ RK ta có một tập mờ ngõ ra được xác định như sau:

          uCK (y) = Min (uA1K (x1), uB2K (x2))

Áp dụng n luật mờ liên quan, suy diễn mờ MAX – MIN cho tập mờ ngõ ra là:

uC (y) = Max (uC1 (y1), uC2 (y1)…uCK (x1)…uCn (y))

Để dễ hiểu hơn ta xét ví dụ sau: Giả sử có cấu trúc MISO 2 ngõ vào x và y – 1 ngõ ra z, với các luật mờ như sau:

R1: IF x is A1 AND y is B1          THEN z is C1

R2: IF x is A2 AND y is B2          THEN z is C2

Giả sử có 2 ngõ vào x và y như hình bên dưới. Khi đó ngõ vào x cắt 2 tập mờ A1 và A2, với độ phụ thuộc tương ứng là uA1 (x1) = 0.6uA2 (x1) = 0.2. Đồng thời, ngõ vào y1, cắt 2 tập mờ B1 và B2 với độ phụ thuộc tương ứng là uB1 (y1) = 0.1uB2 (y1) = 0.8.

Áp dụng luật R1 ta có tập mờ hợp thành thứ nhất có độ phụ thuộc là:

uC1 (z) = Min {uA1 (x₁), uB1 (y1)} = Min {0.6, 0.1} = 0.1 (1)

Tương tự, áp dụng luật mờ R2, tập mờ hợp thành thứ hai có độ phụ thuộc là

uC2 (z) = Min {uA2 (x1), uB2 (y1)} = Min {0.2, 0.8} = 0.2 (2)

Tập mờ ngõ ra cuối cùng theo cơ chế suy diễn MAX-MIN thu được như trên được xác lập bởi phép hợp các tập mờ thành phần. Từ (1) và (2) ta có:

uC (z) = Max {uC1 (z), uC2 (z)} = Max {0.1, 0.2}

Hình minh họa cho cơ chế suy diễn mờ MAX-MIN. Vùng được tô màu xanh chính là Tập mờ ngõ ra.

Suy diễn mờ MAX-PROD

Suy diễn mờ MAX-PROD hoàn toàn giống suy diễn mờ MAX-MIN. Trong đó, các tập mờ ngõ ra thành phần không sử dụng toán tử MIN mà dùng toán tử PROD hay tích đại số.

Ta sẽ xét luật thứ K của bộ luật mờ (Chapter E). Ta có:

RK: Nếu x1 = A1 và x2 = A2 thì y = C

Áp dụng ở luật mờ RK ta có một tập mờ ngõ ra được xác định như sau:

          uCK (y) = uA1K (x1).uB2K (x2)

Áp dụng n luật mờ liên quan, suy diễn mờ MAX – MIN cho tập mờ ngõ ra là:

uC (y) = Max (uC1 (y1), uC2 (y1)…uCK (x1)…uCn (y))

Để dễ hiểu hơn ta xét ví dụ sau: Giả sử có cấu trúc MISO 2 ngõ vào x và y – 1 ngõ ra z, với các luật mờ như sau:

R1: IF x is A1 AND y is B1          THEN z is C1

R2: IF x is A2 AND y is B2          THEN z is C2

Giả sử có 2 ngõ vào x và y như hình bên dưới. Khi đó ngõ vào x cắt 2 tập mờ A1 và A2, với độ phụ thuộc tương ứng là uA1 (x1) = 0.6uA2 (x1) = 0.2. Đồng thời, ngõ vào y1, cắt 2 tập mờ B1 và B2 với độ phụ thuộc tương ứng là uB1 (y1) = 0.1uB2 (y1) = 0.8.

Áp dụng luật R1 ta có tập mờ hợp thành thứ nhất có độ phụ thuộc là:

uC1 (z) = uA1 (x₁).uB1 (y1) = 0.6*0.1 (3)

Tương tự, áp dụng luật mờ R2, tập mờ hợp thành thứ hai có độ phụ thuộc là:

uC2 (z) = uA2 (x1).uB2 (y1) = 0.2*0.8 (4)

Tập mờ ngõ ra cuối cùng theo cơ chế suy diễn MAX-PROD thu được như trên được xác lập bởi phép hợp các tập mờ thành phần. Từ (3) và (4) ta có biểu thức sau:

uC (z) = Max {uC1 (z), uC2 (z)}

Như vậy chúng ta đã tìm hiểu xong về cơ chế suy diễn mờ, phần nảy tương đối nặng về lý thuyết. Tuy nhiên, chúng ta chỉ cần hiểu nguyên lý hoạt động của nó về mặt tính toán và thiết kế Matlab sẽ giúp chúng ta làm điều đó.

Cửa sổ Rule Viewer trong Matlab dùng để thực hiện và tính toán với 2 ngõ vào e và de; ngõ ra u.