Document 7244167

Download Report

Transcript Document 7244167

Fuzzy推論(Fuzzy inference)
根據保存的規則(rule)和給予的事實推導出新的結論
note
Fuzzy推論不只可以處理明確命題,也可以
處理Fuzzy命題
Fuzzy 推 論 是 根 據 近 似 推 理 (approximate
reasoning)的概念發展出來的,較傳統推論
的嚴正推理(exact reasoning)更合理也更具
彈性
1
GMP(General Modus Ponens)
規則:IF X is A THEN Y is B
事實:X is A’
結論:Y is B’
note
GMP是modus ponens的一般化
MP : P  (P  Q)  Q
GMP是Fuzzy蘊含式PQ接受P’的真值推
導出Q’的真值的過程,可以寫成
P'(P  Q)  Q'
這 種 方 式 又 稱 為 前 向 推 理 (forward
reasoning)
前向推理是接受輸入資訊後推導出結果的
演算過程,很適合Fuzzy控制過程使用
2
GMT(General Modus Tollens)
規則:IF X is A THEN Y is B
事實:Y is B’
結論:X is A’
note
GMT是modus tollens的一般化
MT :~ Q  (P  Q) ~ P
GMT是Fuzzy蘊含式PQ由Q’的真值反推
出P’的真值的過程,可以寫成
Q'(P  Q)  P'
這 種 方 式 又 稱 為 逆 向 推 理 (backward
reasoning)
對GMP及GMT而言,規則就是Fuzzy蘊含
式,實際的應用場合可能存在很多的規則
組成知識庫,而希望由事實推導出結果
3
Fuzzy推論在Fuzzy理論的研究範疇中,是相當重要
的課題,所以有許多學者提出不同的方法,大體而
言可以分成下列兩種:
直接推論(direct inference)
間接推論(indiretc inference)
直接推論
就是先把規庫裡所有的規則,以Fuzzy
關係R表示,再把R與事實A’做Fuzzy關
係的合成運算得到結論B’
前題部A
結論部B
模糊關係R
事實A’
合成運算
4
結論B’
Fuzzy規則合成推論(compositional rule of inference)
R i : IF Ai THEN B i , i  1, 2, ..., n
B'  A'R
 A'( R1  R 2    R n )
 ( A'R1 )  ( A'R 2 )    ( A'R n )
n
  ( A'R i )
i 1
n
B' (v )  {max ( A ' (u )  A B (u, v ))}
i 1
n
uU
i 1
n
uU
i 1
uU
i
i
 {max ( A ' (u )  [ Ai (u )  Bi (v )])}
 {max ( A ' (u )  [ Ai (u )  Bi (v )])}
5
A1
B1
A'
R1
U
A'
R2
V
A2
B2
U
V
B1
B2
B'
V
note
此法乃Zadeh在1975年提出的前向推論法
式中的 ° 代表Fuzzy關係R與輸入量A‘的合
成運算
式中所採用的合成運算為max-min方法
式 中 所 採 用 的 Fuzzy 蘊 含 式 運 算 方 法 為
Mandani蘊含,此方法對A’=A時推論的結
果為B,可滿足前向推論的條件
6
Ex.有一個FRBS的規則庫有兩個規則表示如下:
R1 : IF X is A1 THEN Y is B1
R 2 : IF X is A2 THEN Y is B2
A1, A2  U  {u1, u2 , u3}, B1, B2  V  {v1, v2 , v3}
假設這個規則庫的Fuzzy關係R可以表示為:
 1 0.6 0.1
R  R1  R 2  0.6 0.8 0.8
0.2 0.8 0.9
現在X有一個輸入為 A'  0.8 u1  0.3 u2  0 u3
則可得到Y的輸出為
B'  A'R  [(A '  X  Y)  R]  Y
 1 0.6 0.1
 [ 0.8 0.3 0 ]  0.6 0.8 0.8
0.2 0.8 0.9
T
(
0
.
8

1
)

(
0
.
3

0
.
6
)

(
0

0
.
2
)


 ( 0.80.6 )( 0.30.8)( 00.8)   0.8 0.6 0.3
 ( 0.80.1)( 0.30.8)( 00.9 ) 
B'  0.8 v1  0.6 v2  0.3 v3
7
第五章 Fuzzy控制
控制問題
輸入
根據觀測量來決定操控量,或是以獲得
系統輸入與輸出的對應關係為目的
控制系統
輸出
傳統控制理論是以知道受控對像運動過程的數學模
型,並根據某些最佳化準則來獲得這種控制所需的
對應函數。其中轉移函數(transfer function)及狀態空
間法(state space)為古典及現代的控制理論研究方法
兩者均需要建立數學模型來描述系統的特徵。雖然
這些研究方法已經被發展得很完整,但對於那些非
線 性 (nonlinear) 、 不 確 定 (uncertainty) 及 時 變 (time
variant)的系統,僅能對真實系統做近似的數學描述
因此設計出來的控制器當然就不易達到預期的效果
8
Zadeh提出以Fuzzy控制取代傳統控制方法有三個特
點:
1.不用數值或數學模型,改用語言變數來描述系統
的特徵
2.利用附帶條件的敘述描述系統的特性及動作方式
3.使用Fuzzy近似推理方法取代傳統的數值演算方
式來操控系統
Fuzzy控制器(或稱Fuzzy邏輯控制器,FLC)
基本概念為整合人員操作的“專家經驗”於控制器
設計上,並以包含語言變數的fuzzy IF-THEN的控制
規則來描述系統輸入與輸出之間的關係
9
Fuzzy控制器的基本架構
Fuzzy知識庫
(Fuzzy
Knowledge Base)
Crisp
模糊化介面
(Fuzzification)
Fuzzy
Terms
Fuzzy
Fuzzy推論機構 Terms
(Fuzzy Inference
Mechanism)
Process Output
受控系統
(Controlled
system)
解模糊化介面 Crisp
(Defuzzification)
Actual Control
完整的FLC共包含了四個主要部分:
模糊化介面
Fuzzy知識庫
Fuzzy推論機構
解模糊化介面
10
模糊化介面
接收資料擷取介面量測的值
進行量化工作,以便將觀測量的範圍轉換
到語言變量對等的論域
將輸入資料轉換成可被模糊集合表現的語言
數值
Fuzzy知識庫
主要由資料庫(data base)和語言控制規則庫
(rule base)組成
資料庫提供語言變數所需的定義,如變數論
域、語言項子集合與歸屬函數規劃等
語言控制規則庫利用定義出來的語言控制
規則來描述控制目標和領域專家的控制策略
11
Fuzzy推論機構
FLC的核心,具有模擬人類做決策判斷的能
力。為根據人類特有的近似推理方式所延伸
的Fuzzy推論技術做出來的計算機構
解模糊化介面
進行等級對應的工作,以便將輸出變數值的
範圍由一Fuzzy值轉換到對等的明確值論域
中
由推論出來的控制動作產生出實際明確的控
制動作
12
設計Fuzzy控制器的基本原則
定義輸入及輸出變數
決定模糊化策略
定義各語言變數的資料庫
設計控制規則庫
設計Fuzzy推論機構
選擇解模糊化的方式
定義輸入及輸出變數
FLC的輸入變數通常都是擷取自受控系統的
觀測量,或是推論出來的資料。而輸出變數
則為操控受控系統的操作量
一般來說,FLC的輸入變數可能是系統的狀
態、狀態誤差、狀態誤差微分量、狀態誤差
積分量等
13
輸入向量x及輸出向量y可以定義為:
x  {( xi ,{Tx1i , Tx2i ,, Txki i },Ui ,
{1xi ,  x2i ,,  xkii }) | i  1,2,, n}
y  {( yi ,{Ty1i , Ty2i ,, Tylii },Vi ,
{1yi ,  y2i ,,  ykii }) | i  1,2,, m}
T ( xi )  {Tx1i , Tx2i ,, Txki i } 為xi的語言項
( xi )  {1x , x2 ,, xk } 為定義在Ui歸屬函數
i
i
i
i
語言項的大小 T ( xi )  ki 稱作xi 的模糊分割
(fuzzy partition)量,它決定了模糊控制器的
n
最大規則數 N   ki
i 1
14
一般會用以下的文字來描述FLC的Fuzzy集合
PB  Positive Big
PM  Positive Medium
PS  Positive Small
ZE  Zero
NS  Negative Small
NM  Negative Medium
NB  Negative Big
語言項的數量及歸屬函數的外形可完全由專
家知識或經驗來決定,也可利用其它方法,
如聚類分析、自我組織、學習或一些最佳化
法則等建立出來
Fuzzy語言項的特性可以利用歸屬函數來描
述,原則上歸屬函數都要具備凸及正規等性
質,定義時也要注意其單調性
歸屬函數通常可分成數值(離散化)或函數(連
續化)兩種定義方式
15
歸屬函數的涵蓋性:原則上應該使論域中
的任何一點對所有Fuzzy集合的最大歸屬度
都不能太小,以免出現失控現象
歸屬函數的重疊性:重疊度小表示對系統
控制的靈敏度高,但對參數變化的適應性
較差,亦即強健性(robustness)較差
16
決定模糊化策略
模糊化(fuzzification)是一種把量測值轉換成
主觀評價的一種手續
一般來說,由系統所觀測到的值都是明確
值,而藉由模糊化策略我們將之映射成論
域中的一個模糊值
最簡單的模糊化方法即是將量測到明確值
直接轉換成Fuzzy單值(Fuzzy singleton)
1 x  x0
 A ( x)  
0 x  x0
1
fuzzy singleton
x0
17
另外一種情形為輸入訊號被隨機雜訊干擾,
所以我們將機率性資料轉化成模糊數來處理
 ( x  x0 )2 
 A ( x)  exp 

2



18
設計控制規則庫
Fuzzy規則庫的建立是FLC設計的重點之一,
這 些 由 語 言 變 數 所 形 成 的 IF-THEN 規 則 在
FLC中是用來建立系統輸入輸出的關係
一般來說,模糊規則的形式分為語意式的模
糊規則及函數式的模糊規則
語意式模糊規則
R i : IF X1 is Ai1 AND  AND X k is Aik
THEN Y is Bi , i  1, 2, ..., n
函數式模糊規則(又稱為TS Fuzzy Model)
R i : IF X1 is Ai1 AND  AND X k is Aik
THEN Y is f i (X1 ,, X k ), i  1, 2, ..., n
19
設計Fuzzy推論機構
Fuzzy推論機構為FLC的核心,為模擬人類
決策的概念於模糊邏輯及近似推理的架構
GMP及GMT為近似推理的兩種重要推論方
式,其中GMP為前向式推論方法,只要有
輸入資料就能照著規則推理出結論,因此
很適合應用在Fuzzy控制的推論機構
GMP:
規則:IF X is A THEN Y is B
事實:X is A’
結論:Y is B’
前件部的Fuzzy關係可以Fuzzy蘊含的方式
表示成 R  A  B
結論Y可以由 B'  A' R  A'( A  B) 得到
多規則近似推理時,每個規則的Fuzzy蘊含
是以else相連接,這個生產鏈的運算方法選
擇也是Fuzzy推論機中的重要運算
20
茲將各種不同的推論法中的三個重要運算(蘊含、合
成、生產鏈)分別比較如下:
Mamdani的Min-Min-Max模糊推論法
R 1 : IF X1 is A11 AND X 2 is A 21 THEN Y is B1
R 2 : IF X1 is A12 AND X 2 is A 22 THEN Y is B2
Wi  min{ max [min( A1i , X1 )], max [min( A2i , X2 )]}
X1
X2
Bi  min( Wi , Bi ( y ))
r
B  max Bi
*
i 1
x1 is A11
x 2 is A21
X1
x1 is A12
y is B1
Y
X2
x 2 is A22
B*
y is B2
Y
X1
X2
21
Y
Larsen的Min-Product-Max模糊推論法
R 1 : IF X1 is A11 AND X 2 is A 21 THEN Y is B1
R 2 : IF X1 is A12 AND X 2 is A 22 THEN Y is B2
Wi  min{ max [min( A1i , X1 )], max [min( A2i , X2 )]}
X1
X2
Bi  Wi  Bi ( y )
r
B  max Bi
*
i 1
x1 is A11
x 2 is A21
X1
x1 is A12
y is B1
Y
X2
x 2 is A22
B*
y is B2
Y
X1
X2
22
Y
Tsukamoto的模糊推論法
R 1 : IF X1 is A11 AND X 2 is A 21 THEN Y is B1
R 2 : IF X1 is A12 AND X 2 is A 22 THEN Y is B2
Wi  min{ max [min( A1i , X1 )], max [min( A2i , X2 )]}
X1
X2
W1
X1
X2
y1
Y
W2
X1
X2
23
y2
Y
Takagi與Sugeno的模糊推論法
R 1 : IF X1 is A11 AND X 2 is A 21 THEN Y is B1
R 2 : IF X1 is A12 AND X 2 is A 22 THEN Y is B2
Wi  min{ max [min( A1i , X1 )], max [min( A2i , X2 )]}
X1
x1 is A11
X2
x 2 is A21
y1  a1 * x1  b1 * x 2  c1
W1
X1
x1 is A12
X2
x 2 is A22
y 2  a 2 * x1  b2 * x 2  c2
W2
X1
X2
24
選擇解模糊化的方式
解模糊化的目的在於將推論結果的平均值換
成實際的操作量
常用的解模糊化方法有:最大歸屬度選擇法
(離散式)、加權平均法、重心法、高度法及
面積法
最大歸屬度選擇法
在FLC的輸出Fuzzy集合中,選取歸屬度最大
的那個元素作為操作量
C1  0.2 2  0.7 3  1 4  0.7 5  0.2 6
 u*  4
C2  0.2 0  0.6 1  1 2  1 3  1 4  1 5  0.2 6
(2  5)
 u* 
 3.5 或
2
(2  3  4  5)
u* 
 3.5
4
25
加權平均法
以歸屬度為加權係數,操作量u*為
u* 
  (ui ) * ui
i
  (ui )
i
C1  0.2 2  0.7 3  1 4  0.7 5  0.2 6
0.2 * 2  0.7 * 3  1 * 4  0.7 * 5  0.2 * 6
 u* 
0.2  0.7  1  0.7  0.2
12.2

 4.3
2.8
重心法
求推論結果陰影部分的重心
B ( y ) * ydy

u* 
 B ( y )dy
i
i
26
高度法
以被觸動規則前件部的適合度為結論部的高
度,則輸出u*為
u* 
 wi * yi
 wi
wi  Aij (X j )
其中yi 建議使用單值形式或Sugeno線性方程
式的結論部
面積法
Ai * Yi

u* 
 Ai
Ai   Bi ( Y j )dy
27