範例:小費問題(Sugeno)
老師錄製的操作示範:把同一個小費問題改成 Sugeno 型 FIS。附檔為 tippersg.fis。
▶ 在 Colab 開啟原課程的 MATLAB 程式已改寫成 Python 筆記本(第 7 節 tippersg.fis),可以直接在瀏覽器執行、修改參數。⬇ 下載 Fuzzy_toolbox.ipynb
tippersg.fis 的內容 What Is in the FIS
(以下整理自附檔,為補充)規則與 Mamdani 版相同(3 條,OR = max),差別在結論與解模糊化:
| 變數 | 範圍 | 歸屬函數 |
|---|---|---|
| 輸入 service | 0~10 | poor 差 [1.5 0]、average 好 [1.5 5]、good 優 [1.5 10](皆 gaussmf) |
| 輸入 food | 0~10 | rancid 難吃 trapmf [−5 0 1 3]、delicious 好吃 trapmf [7 9 10 15] |
| 輸出 tip | −30~30 | cheap linear [0 0 5]、average linear [0 0 15]、generous linear [0 0 25] |
- 輸出宣告為一階(linear),但兩個輸入的係數都是 0,所以實際上是零階:三條規則的結論分別固定為 5、15、25。
- 解模糊化為
wtaver(加權平均):小費 = Σ wᵢ zᵢ / Σ wᵢ。服務 3、食物 8 時為 18.48%。 - 服務的歸屬函數名稱和 tipper.fis 不同(這裡的 good 是「優」),但位置相同。食物的梯形延伸到範圍外,在 0~10 之內的形狀與 tipper.fis 完全一樣。
兩型的比較與互動推論見 Sugeno 型模糊推論,下方動畫也可以切換到 Sugeno。