Fuzzy系統 陳詩豐 助理教授 龍華科技大學 機械系
模糊集合 除非你嘗試使每件事物精確否則無法了解它模糊的”程度”—羅素邏輯原子論哲學 “房子”表示房子的集合(一組事物) “老房子”表一組較老些房子的集合,”房子”的子集合 “很老房子”表一組更老些房子的集合,…… 模糊熵(ㄉ一):量測模糊集合的模糊程度,它回答了 ”模糊集合有多模糊呢?” 的問題,它是程度的問題 ”熵”表示系統中的不確定或紊亂度;而”集合”則描述系統或事物的積聚.
背景 1965札德教授在information and control雜誌上發表”模糊集合(Fuzzy Sets)”. Ex. 身材高者的集合,此模糊集合被稱為”歸屬曲線(membership)” 模糊論的用途? 模糊集合怎麼使用? 有何可操作的系統或模擬呢? 1980年在日本人將之應用於控制上. 1990年底日本人已有超過100項模糊控制應用與產品. 現在呢?
定義 將傳統之明確(二元)集合加以模糊化,允許模糊集合中的元素隻歸屬程度介於0與1之間的任意值. 也因此模糊集合可以有無限多種歸屬函數,以適應不同的環境變異. 換句話說,模糊化的好處是可以提供更佳的推廣性,錯誤容忍性,以及更適合在真實世界中的非線性系統.
Fuzzy 理論 何謂Fuzzy? 模糊,不明確 Ex. 今天”非常”熱, 她是位”美”女, 他”很”高 二值:亞里斯多德; A或非A; 確定; 全部或無; 0或1; 數位電腦; 傳統程式; 位元(bits) 多值:釋迦牟尼; A且非A; 部分; 某種程度; 0和1之間的連續值; 類神經網路; 自然語言; 模糊元(fits)
模糊邏輯 陰陽方程式:A=非A Ex. 紅蘋果和非紅蘋果? Ex. 三十歲出頭老嗎?是或否ㄋ? 那有些橙色,粉紅色,或綠紋ㄋ(每個人認知不同有不同的分別) Ex. 三十歲出頭老嗎?是或否ㄋ? 模糊原理認為成年是個模糊概念!! 應該用曲線而不是直線
模糊集合(II)
模糊近似定理 1990年已經證明模糊系統可以模擬或近似任何系統,以模糊近似定理(Fuzzy Approximation Theorem—FAT) 模糊近似定理以一些曲形塊蓋在曲線上. 每件人類的知識 ( [若A則B] 形式的規則 ) 定義一片曲形塊. 模糊系統只是一大堆模糊 [若則] 的規則,所有的規則定義了蓋在曲線上的曲形塊. 更多知識表示更多規則,更多規則表示表示多曲形塊和蓋得更好.
模糊規則 以規則推理,規則和觀念相連,她們連結事物,事件,或程序. 在自然語言和電腦語言中, 規則是[若則] 敘述的形式. Ex. 若下雨,你會被淋濕,然後無法打球. (1)週六會下雨因此不能在週六打球. (2)週日不會下雨,若你不能於週六打球,週日又不下雨,你可在週日打球,因此推理得在週日打球. 模糊規則,定義模糊曲形塊,曲形塊就是連結普通常識到簡單幾何,協助我們腦中知識取出放在紙上和電腦中. 而曲形塊直接從建立模糊系統而來
建立模糊系統 (步驟I):選定”參數”—稱之為X和Y. X為系統輸入,Y為輸出,若X則Y. (步驟II):選定”模糊集合”—定義X和Y之模糊子集合 例如X的模糊集合為 ”冷,涼,剛好,暖,熱” [C=5/9*(F-32)] 18.3C
建立模糊系統(Cont.) 繼續…(步驟II): 定義馬達速率的五個模糊集合 “停,慢,中速,快,很快” (步驟III):連結 X和Y模糊子集合,必須分配每一個X模糊子集合元素相對應一個Y模糊子集合元素 天氣太冷就關掉馬達,空調機改變馬達速率使達溫度恰好,因此我們有第一規則: [若X是”冷”則Y是”停”]…..
建立模糊系統(Cont.) 結合兩個三角形得到一個曲形塊規則是區形塊
模糊近似 曲形塊
啟動所有規則 假設溫度需求63F,則可知輸入是80%屬於”剛好,與15%屬於”涼”,其他為0% 因此規則3啟動80%,規則2啟動15% 將”中速”縮成80%,”慢”縮為15%
反模糊化求輸出 將三角形相加得到輸出集合”加成模糊系統” 再”反模糊化”取平均值以求得馬達轉速
MATLAB-Fuzzy Logic Toolbox Demo控制空氣調節機,X是華氏溫度,Y是調節機馬達數率的變化,我們要天氣熱時馬達加速,天氣冷時馬達調慢
模糊系統 有足夠資訊後,可以將不清晰的用語(ex:年老,年輕)轉換成模糊集合曲線 由感測器所得之資訊傳達到類神經網路,再由神經網路產生模糊規則 模糊工程師設計軟體和晶片使電腦推理更像人腦 適應(adaptive)或類神經模糊系統在取樣資訊後改變或調整其規則.正如我們的世界觀會隨所聽聞(感覺)而改變.
細說模糊近似推論
多規則多變數實例 模糊洗衣機—利用量測衣服髒度,水流強度,設計洗衣時間? 步驟一: 定義輸出與輸入 步驟二: 決定模糊集合變數 衣服髒度X (0~100)度 水流強度Y(0~80)升/分 洗衣時間T(0~100)分 步驟二: 決定模糊集合變數 皆分成三個模糊集合變數(大L,中M,小S)
多規則多變數實例 步驟三: 決定控制規則 模糊推論 解模糊化(重心法) If X=S & Y=S, then T=M If X=M & Y=S, then T=L If X=L & Y=S, then T=L If X=S & Y=M, then T=S If X=M & Y=M, then T=M If X=L & Y=M, then T=L If X=S & Y=L, then T=S If X=M & Y=L, then T=S If X=L & Y=L, then T=M 模糊推論 解模糊化(重心法)
MATLAB-Fuzzy Logic Toolbox Demo模糊洗衣機? Demo以食物與服務品質決定小費多少? 服務差或食品差,小費低 服務好,小費中等 服務極好或食品極好,小費高
問題思考? 以模糊理論設計一個倒單擺直立的模糊控制系統,其實體圖如下: 以直覺的思考來看此系統,如此控制台車的左右移動而使桿子維持直立不倒,就是我們的控制目的
問題提示 條件: 其中所決定之模糊規則中之輸入變數為二: (1)桿子當時的角度,在垂直線右方為正,左方為負; 條件: 其中所決定之模糊規則中之輸入變數為二: (1)桿子當時的角度,在垂直線右方為正,左方為負; (2)桿子當時的角度d/dt, 正往右方倒下中為d/dt > 0, 正往左方倒下中為d/dt < 0, 而受控之輸出變數只有一個,就是對台車之施力大小u,向右施力叫u>0,向左施力叫u<0. 假如每個模糊集合(,d/dt,u)均有七種子集合(狀態): 即NB(負大),NM(負中),NS(負小),ZO(零),PS(正小),PM(正中),PB(正大), 且它們的歸屬形狀定義如下:
求解問題 問題: (1) 請憑你們的直覺經驗,試著選定此系統之模糊規則(共49條) (2) 並以解模糊化之技巧求出(,d/dt)=(7,8)時,即桿子右偏中線7,且仍在向右倒下中,倒下速度為8/sec,此時台車應以u= ? 牛頓之力以及方向, 以挽回桿子不再繼續向右倒.