MATLAB函数gensurf,MATLAB模糊逻辑工具箱函数.ppt
1 MATLAB模糊邏輯工具箱簡介 2 利用模糊邏輯工具箱建立模糊推理系統 3 MATLAB模糊邏輯工具箱的圖形用戶界面 4 基于Simulink的模糊邏輯的系統模塊 5.2.5 模糊推理計算與去模糊化 在建立好模糊語言變量及其隸屬度的值,并構造完成模糊規則之后,就可執行模糊推理計算了。模糊推理的執行結果與模糊蘊含操作的定義、推理合成規則、模糊規則前件部分的連接詞“and”的操作定義等有關,因而有多種不同的算法。 目前常用的模糊推理合成規則是“極大一極小”合成規則,設R表示規則:“X為A?Y為 B”表達的模糊關系,則當X為 A’時,按照“極大一極小”規則進行模糊推理的結論B’計算如下: 基于模糊蘊含操作的不同定義,人們提出了多種模糊推理算法,其中較為常用的是 Mamdani模糊推理算法和Larsen模糊推理算法。另外,對于輸出為精確量的一類特殊模糊邏輯系統——Takagi-Sugeno型模糊推理系統,采用了將模糊推理與去模糊化結合的運算操作。與其他類型的模糊推理方法不同,Takagi——Sugeno型模糊推理將去模糊化也結合到模糊推理中,其輸出為精確量。這是由Takagi——Sugeno型模糊規則的形式所決定的,在Sugeno型模糊規則的后件部分將輸出量表示為輸入量的線性組合,零階Sugeno型模糊規則具有如下形式。 IF x為A 且 y為B THEN z=k 其中,k為常數。 而一階Sugeno型模糊規則的形式如下: IF x為A 且 y為B THEN z=p*x+q*y+r 式中 p,q,r均為常數。 對于一個由n條規則組成的Sugeno型模糊推理系統,設每條規則具有下面的形式: Ri:IF x為Ai且y為Bi THEN z=zi (i=1,2,…,n) 則系統總的輸出用下式計算: 在MATLAB模糊邏輯工具箱中提供了有關對模糊推理計算與去模糊化的函數,如表5-5所示。 表5-5 模糊推理計算與去模糊化的函數 函 數 名 功 能 evalfis( ) 執行模糊推理計算函數 defuzz( ) 執行輸出去模糊化函數 gensurf( ) 生成模糊推理系統的輸出曲面并顯示函數 1. 執行模糊推理計算函數evalfis( ) 該函數用于計算已知模糊系統在給定輸入變量時的輸出值,其調用格式 output=evalfis(input,fisMat) 例5-3 某一工業過程要根據測量的溫度和壓力來確定閥門開啟的角度。假設輸入溫度?[0,30] ]模糊化成兩級:冷和熱;壓力?[0,3]模糊化成兩級:高和正常;輸出閥門開啟角度的增量?[-10,10]模糊化成三級:正、負和零。模糊規則為: IF 溫度 is 冷 and 壓力 is 高 THEN 閥門角度的增量 is正 IF 溫度 is 熱 and 壓力 is 高 THEN 閥門角度的增量 is負 IF 壓力 is 正常 THEN 閥門角度的增量 is零 適當選擇隸屬度函數后,設計一基于Mamdani模型的模糊推理系統,計算當溫度和壓力分別為5和1.5以及11和2時閥門開啟的角度的增量,并繪制輸入/輸出曲面圖。 解 利用以下MATLAB程序,可得如下結果和如圖5-17所示的系統輸入/輸出曲面圖。 %ex5_3.m 執行結果: out = 2.5000 3.3921 由以上結果可知,當溫度和壓力分別為5和1.5時,閥門開啟角度的增量為2.5;溫度和壓力分別為11和2時,角度的增量為3.3921。 2. 執行輸出去模糊化函數defuzz( ) 調用格式: out=defuzz(x,mf,type) 其中,參數x是變量的論域范圍;mf為待去模糊化的模糊集合;type是去模糊化的方法,去模糊化的方法包括5種,即centroid(面積中心法)、bisector(面積平分法)、mom(平均最大隸屬度方法)、som(最大隸屬度中的取最小值方法)、lom(最大隸屬度中的取最大值方法)。例: >>x=-10:0.1:10;mf=trapmf(x,[-10 -8 -4 7]);xx=defuzz(x,mf,’centroid’) 輸出結果: xx = -3.2857 3. 生成模糊推理系統的輸出曲面并顯示函數gensurf( ) 調用格式 gensurf(fisMat) gensurf(fisMat,inputs,outputs) gensurf(fisMat,inputs,outputs,grids,refinput) 其中,參數f
總結
以上是生活随笔為你收集整理的MATLAB函数gensurf,MATLAB模糊逻辑工具箱函数.ppt的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java xml 追加,java –
- 下一篇: 中药敷肚子减肥的危害是什么