- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
模糊控制工具箱
一、模糊控制的产生
??????在传统控制领域,对于明确系统有强而有力的控制能力,即被控系统的动态信息越详细,越能达到精确控制的目的。然而,在多变量、非线性的复杂系统中,往往难以完全描述系统的动态信息。此时,传统的控制理论则显得无能为力,而有经验的专家或工作人员仍能根据长期实践观察和操作经验进行有效控制。
??????据此引申,是否可将人的操作经验总结为若干条控制规则以避开复杂模型的建立过程?
??????模糊控制最重要的特征是反应人们的经验及推理规则,而这些经验和推理规则是通过自然语言来表达的,如“水温上升过快,则关小燃气阀”。在控制系统初期,由于对系统缺乏了解,控制效果可能不好,但若干次探索后终能实现预期的控制,这就是经验对模糊控制系统的重要性。由于模糊控制实质上是用计算机去执行人的控制策略,因而可以避开复杂模型的建立,对人们关于某个控制问题的成功和失败经验加工,总结出知识,从中提炼出控制规则,实现复杂系统的控制。
?????PS: “模糊”是人类感知万物,获取知识,思维推理,决策实施的重要特征。“模糊”比“清晰”所拥有的信息量更大,更符合客观世界。
二、模糊逻辑的理论基础
??????模糊逻辑是指模仿人脑不确定性的概念判断和推理思维,对于定性的知识和经验,借助隶属度概念、模糊集合,来处理模糊关系。模糊逻辑实质上是要对模糊性对象进行精确描述和处理。
??????模糊逻辑的目的是将一个输入空间映射到一个输出空间,主要要靠一系列的if-then规则。这些规则包含变量和描述这些变量的形容词,被平行评估,因此它们的顺序不重要。在进行模糊推理之前,先要定义好输入和输出变量以及描述它们的形容词。模糊推理的流程如下图所示。
??????1)模糊集合
??????普通情况下,元素a属于集合A(1)或不属于集合A(0),如下图所示,星期一和星期三都是工作日,而苹果和星星则不是。这就是经典集合,完全包括或完全不包括某个元素。
??????而模糊集合没有明确的界限,把只取0和1二值的普通集合概念推广到在[0,1]区间上无穷多值的模糊集合概念,并用“隶属度”这一概念来精确刻画元素和模糊集合之间的关系。如星期五既是工作日,但下午或晚上又像休息日,因此星期五并不完全属于工作日。
??????2)隶属度函数
??????在经典集合下,周一至周日是否属于工作日如下左图所示,而模糊集合下,周一至周日属于工作日的隶属度可以用一连续曲线表示,如右图所示,此时这条曲线上的每一点定义了当前时刻属于工作日的程度,这条曲线称为隶属度函数。隶属度曲线有不同的形式,常见的有三角形、梯形、高斯分布形、S形等。
??????以一年春夏秋冬四个季节为例,每个季节的隶属度函数如下:
牋牋牋3???)逻辑运算
??????逻辑运算是模糊推理的基础,我们先看一下基本的逻辑运算。
牋牋牋牋3?由于模糊逻辑用隶属度函数表示元素属于集合的程度,当隶属度为0或1时,可以采用上面的基本逻辑运算;当隶属度在(0,1)之内时,需要对逻辑运算修改一下,一种方法是用min、max、1-A代替and、or、not。
牋牋牋牋??4)if-then 规则
??????模糊集和模糊运算是模糊推理的对象和动作,if-then规则用于形成模糊推理的条件语句。最简单的if-then规则:if x is A then y is B。“x is A”是前提,“y is B”是结论。比如:if service is good then tip is average。这里的good是一个模糊输入,average是模糊输出。
??????if-then规则可以有两个输入:if x is A and y is B then z is C。
??????当有多个规则时,需要综合考虑各个规则的处理结果,一种方法是取各个规则处理结果的最大值,还有一种方法:probor(a,b)=a+b-ab.
三、模糊控制Matlab工具箱示例
??????以一个在饭店付小费比例的问题为例,输入是服务员服务质量[0,10]和饭菜可口程度[0,10],输出是小费百分比[5,25]。付小费的三个法则:
??????*if the service is poor or the food is rancid then tip is cheap;
??????*if the service is good then tip is average;
??????*if the service is excellent or the food is delicious then tip is generous。
??????1)在Matlab命令行窗口输入fuzzy,打开模糊控制工具箱
??????2)增加一个输入变量,更改输入和输出变量名称
??????3)
文档评论(0)