其中,E和EC就是前面的语言变量,A1,A2,,An是E的模糊集合,B1,B2,,Bn是EC的模糊集合,C1,C2,,Cn是U的模糊集合。每条规则是在一个积分空间X′×Y ′×Z′中的模糊关系,E∈ X′,EC ∈Y′,U∈ Z′。如果X′、Y′、Z′皆为离散论域,还可以写成模糊关系矩阵Ri,i=1,2,,n。规则库中的n条规则是并列的,它们之间是“或”的逻辑关系,因此整个规则集的模糊关系为:
模糊控制器中的数据库和规则库都有较好的完备性,这样才能有效的实现模糊控制。但是规则越多,计算机运算起来会特别麻烦,为了在控制效果与运算速度之间找到一个平衡点,应该在两个方面都兼顾到。
(3) 模糊推理机
推理机有每个采样时刻的输入,依据模糊控制规则推导出控制作用,而模糊控制规则这一组模糊条件语句可以导出一个输入输出空间上的模糊关系,推理机按着模糊推理的合成规则进行运算,求得控制作用,推理机制为在t时刻若输入量为E和EC,E∈ X′,EC ∈Y′,若论域X′、Y′、Z′皆为离散的,E在X′上对应矢量A′,EC在对应矢量B′,则推理结果是Z′上的矢量C′为
事实上,模糊规则库中并不需要有与模糊推理条件完全匹配的模糊规则的IF部分,规则库中的这些规则其实都有可能会对结果产生影响,影响的大小视该模糊集合上隶属度的大小而定。因此,只要能正确的运用某种算法,选择合适的隶属度函数和分布情况,结合所用的所有规则在模糊集合上的隶属度,即使没有完全匹配的规则,同样有可能得到一条符合逻辑的推理结果。模糊推理能够很好的解决这些变量界定十分模糊、不精确的问题的推理。这就好像人们运用已有的经验,举一反三,去认识未知的事物、解决第一次遇到的新问题一样。与人们的思文方式十分的接近,这正是模糊推理的优点所在。根据实际情况的复杂程度和不同的要求,模糊推理所需要的模糊规则的数量是不同的。通常,一个问题越复杂,精度要求越高,那就需要越多的模糊规则来进行推理。
(4) 解模糊
解模糊,即对模糊量的清晰化,可以看作模糊化的反过程。它要由模糊推理结果产生ut的数值,作为模糊控制器的输出。解模糊接口主要完成以下两项工作:
1)解模糊:对u也要有真实论域Z变换到内部论域Z′,对U ∈Z′定义若干个模糊集合,并规定各模糊集合的隶属度函数。模糊推理是在内部论域上进行的,因此得到的推理结果C′是Z′上的模糊矢量,其元素为对U的某个模糊集合的隶属度。对于某组输入E和EC,一般会同时满足多条规则,因此会有多个推理结果C′i,i为不同的模糊集合,用上述公式求C为:
并用解模糊算法(如最大隶属度法、重心法、中位法等),即可求得此时的内部控制量u′。
2)论域反变换:得到的U∈ Z′,进行论域反变换即可得到真正的输出u∈Z,它仍是非模糊的普通变量[13]。
2.2.7 模糊控制算法的实现
模糊控制算法的实现方法目前有三种,即查表法、硬件专用模糊控制器和软件模糊推理等。其最主要的区别在于模糊推理的实现方法不同。
(1) 查表法
查表法适用于输入、输出论域为离散有限论域的情况。查表法是输入域上的点到输出论域的对应关系,它已经是经过了模糊化、模糊推理和解模糊的过程,它可以离线计算得到,模糊控制器在线运行时,进行查表就可以了,因而可以大大加快在线运行的速度。这一过程可以用图2.3表示。本论文模糊控制器的设计采用的正是此法。 MATLAB加热炉温度的模糊控制算法设计与仿真(8):http://www.751com.cn/zidonghua/lunwen_4075.html