- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算智慧理论与应用补充讲义.PDF
計算智慧理論與應用補充講義
簡易的模糊推理機制的設計與應用
Author: Tsung-Ying Sun
Date: 2012, 10, 2
Department of Electrical Engineering, National Dong Hwa University
1.簡易 Fuzzy 推理機制的實踐
Fuzzy 推理機制是Fuzzy 系統的主要運算核心,Fuzzy 推理機制的演算方式是固定的,
這個演算機制的運作方式是很容易在電腦或數位硬體上實踐這個演算機制。因此,對於不同
的 fuzzy 系統只要依據系統的輸出入行為規劃出對應的fuzzy 知識庫,就可在 fuzzy 推理機
制下針對系統的輸入值進行fuzzy 近似推理,推導出系統的輸出值。換言之,只要妥善的規
劃 fuzzy 知識庫的資料結構,就可以寫一個 fuzzy 推理程式去實踐規則式 fuzzy 系統。本節
簡單說明 fuzzy 知識庫資料結構的規劃方法,並且依據此資料結構以 C語言發展一個簡單的
fuzzy 推理引擎程式。實作 fuzzy 控制系統時,只要把這個推理引擎程式與控制程式結合在
一起,就可以很容易的完成建構fuzzy 控制系統的工作。
1.1 Fuzzy 知識庫的資料結構定義
首先把 fuzzy 知識庫的檔名訂為 fkb.h ,這個檔必須包含三個陣列:FLC[] 、DataBase[]
及 RuleBase[] ,分別定義fuzzy 控制系統、fuzzy資料庫及 fuzzy規則庫。各陣列的內容說明
如下:
1. FLC[]陣列
定義 fuzzy 控制系統的輸入變數數量(NumOfInputs) 、輸出變數數量(NumOfOutputs) 、
fuzzy規則前件部的 AND運算子(AndOperator) 、推論作用運算(Activator)及解 fuzzy化的方
法(DefuzzyMethod) 。表1為FLC[]陣列各元素內容的項目名稱、範例及說明。
表1 FLC[]陣列各元素內容意義一覽表
項目名稱 範例 說 明
NumOfInputs 2 輸入變數數量,預設最多 8個。
NumOfOutputs 1 輸出變數數量,預設最多 4個。
AndOperator 2 前件部的 AND運算子: 1為min ,2 為product 。
Activator 1 推論積聚運算:1為maximum activation ,2 為 additive activation
DefuzzyMethod 1 解 fuzzy化的方法: 1為weighted average ,2 為maximum 。
2. DataBase[]陣列
定義輸入變數 fuzzy 集合的歸屬函數,我們採用四個點(P1~P4)定義的片段連續式歸屬
函數在論域上的相關位置,P1及 P4 分別代表歸屬函數的左右邊界;P2及 P3 為歸屬函數中
間的兩個片段點,若為三角形則 P2=P3 。對於任意論域元素x計算其相對的歸屬度可由
1
Lecture 3 獲得,但是必須即時計算斜率 S1 與S2 ,以便獲得P1~P2及 P3~P4的插值,為了
避免這些無謂的計算,我們可以在 定義歸屬函數時就預先把 S1 及 S2 算出來,直接放在
DataBase[]陣列中,因此,每個歸屬函數的定義就需要六個數據: {P1, P2, P3, P4, S1, S2} 。
為了 fuzzy 推論的計算效能及簡化DataBase[]陣列的複雜性, S1和 S2都以整數表示。 S1的
計算公式如式 (1)所示, S2則以式 (2)計算即可。式中的 MaxTrue代表歸屬度的最大值,若以
16-bit 不帶符號整數(unsigned integer)表示則為65535 ,換算斜率時若分母為0就以 MaxTrue
表示。
文档评论(0)