中易网

如何在MATLAB下把模糊推理系统转化为查询表

答案:1  悬赏:40  
解决时间 2021-01-09 12:33
如何在MATLAB下把模糊推理系统转化为查询表
最佳答案
界面切换到MATLAB主界面,点击File/Open,打开T.mat,在命令窗下键入命令whos,会看到如下结构变量:
stresults 1x1 2268 struct,
该结构保存了模型sltankruletotest的输入变量的测试数据,输出变量响应数据,它们分别是:
两输入测试向量数据组:
stresults.testvector.TestVector1
stresults.testvector.TestVector2
一输出向量数据组:
stresults.variable.st_signal
可以在MATLAB命令行键入以上命令看这些变量具体数据内容。界面切换到FuzzyLookup,双击LookupTable (2-D),界面属性设置如下:

图7 查询表模块参数设置
再点击该属性窗上的Edit…,Simulink自动生成如下样式的表格:

图8 查询表模块数据
查询表生成后样子如下:

图9 生成查询表模块外观
4. 用查询表替代模糊控制器测试水位控制效果
把生成的查询表考贝到sltankrule,替换掉原来的模糊推理组件,样子如下:

图10 用查询替换模糊控制器后的控制系统
查询表采用interplolation-extrapolstion查寻方法,现在再仿真该水位控制系统,通过看水位控制动画表示,查寻表水位的控制和原来的模糊规则控制效果已经相当,如果换一种查询表查询方法,比如use input nearest查寻方法,控制效果就差了,究其原因是在测试环节我们的测试向量量化等级不足所致,如果把测试向量修改一下,比如:TestVector1定义为[-1:0.08 : 1]、 TestVector2定义为[-0.1:0.01 :0.1]再做测试收集数据,生成查询表,那么查询表无论采用那一种查询方法,水位的控制效果都很好了,这时查询表表格变大了些。获得这个表格后,对于嵌入式系统,即使用汇编语言写出该表的查询程序也是很容易了。
5. 总结
本文讲述了在MATLAB 环境下,把模糊逻辑系统转化为查询表的一种方法,这种方法简单易行,查询表控制也达到了模糊控制的同样效果,按以上思路,也容易理解在MATLAB 下,用其它方法建立的部分系统模型,如果有必要的话,也可使用同样的的方法把它转化成查询表,从工程角度出发,这种方法使得工程技术人员在产品设计中轻松实现模糊逻辑建模仿真到实际应用的连贯设计流程。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
林家铺子地址在什么地方,我要处理点事
赵都棋牌室地址好找么,我有些事要过去
如何选择养殖项目
温州成教学院好吗
欢乐颂2关关男友是谁演的 邓论饰演谢童即将出
夏季移植葡萄的最佳办法
蔚兰棋牌室地址在什么地方,想过去办事
女孩八字都阴命运好吗
谁有马天宇主演的幻城凡世的资源
瞳爱情感能解决婚姻问题吗
她同意了吗
有源卡用NRF24L01P和SI24R1那个更好?
09年9月比亚迪f0跑了10万公里能卖好多钱
对眼睛来说,电脑显示器的亮度是亮些好还是暗
用深情的声可以组哪些词语
推荐资讯
一般代客理财的话收取对方盈利的几成比较合理
蚌埠专利申请在什么地方,怎么办理申请专利
app1e的iplone是什么意思?
CRB600H钢筋有什么优势,为什么能超越传统钢
晒干水果茶的做法
怎么写法律起诉书啊?
求正月初四写的小说全部打包下载
在(1-X)²–(1-X)³+
桌上有15个硬币,你和你对手轮流去拿,拿到最后
我这串金刚怎么样,请教懂行的人,非诚勿扰,
新生孔雀鱼要养几天才可以和大鱼一起养而不被
新铁锅不经过处理就炒菜行吗?铁锅表面防锈剂
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?