第6章 模糊逻辑
6.1 隶属函数
6.1.1 高斯隶属函数
函数 gaussmf
格式 y=gaussmf(x,[sig c])
说明 高斯隶属函数的数学表达式为:,其中为参数,x为自变量,sig为数学表达式中的参数。
例6-1
>>x=0:0.1:10;
>>y=gaussmf(x,[2 5]);
>>plot(x,y)
>>xlabel('gaussmf, P=[2 5]')
结果为图6-1。
图6-1
6.1.2 两边型高斯隶属函数
函数 gauss2mf
格式 y = gauss2mf(x,[sig1 c1 sig2 c2])
说明 sig1、c1、sig2、c2为命令1中数学表达式中的两对参数
例6-2
>>x = (0:0.1:10)';
>>y1 = gauss2mf(x, [2 4 1 8]);
>>y2 = gauss2mf(x, [2 5 1 7]);
>>y3 = gauss2mf(x, [2 6 1 6]);
>>y4 = gauss2mf(x, [2 7 1 5]);
>>y5 = gauss2mf(x, [2 8 1 4]);
>>plot(x, [y1 y2 y3 y4 y5]);
>>set(gcf, 'name', 'gauss2mf', 'numbertitle', 'off');
结果为图6-2
6.1.3 建立一般钟型隶属函数
函数 gbellmf
格式 y = gbellmf(x,params)
说明 一般钟型隶属函数依靠函数表达式
这里x指定变量定义域范围,参数b通常为正,参数c位于曲线中心,第二个参数变量params是一个各项分别为a,b和c的向量。
例6-3
>>x=0:0.1:10;
>>y=gbellmf(x,[2 4 6]);
>>plot(x,y)
>>xlabel('gbellmf, P=[2 4 6]')
结果为图6-3。
图6-2图6-3
6.1.4 两个sigmoid型隶属函数之差组成的隶属函数
函数 dsigmf
格式 y = dsigmf(x,[a1 c1 a2 c2])
说明 这里sigmoid型隶属函数由下式给出
x是变量,a,c是参数。dsigmf使用四个参数a1,c1,a2,c2,并且是两个sigmoid型函数之差:,参数按顺序列出。
例6-4
>>x=0:0.1:10;
>>y=dsigmf(x,[5 2 5 7]);
>>plot(x,y)
结果为图6-4
图6-4
6.1.5 通用隶属函数计算
函数 evalmf
格式 y = evalmf(x, mfParams, mfType)
说明 evalmf可以计算任意隶属函数,这里x是变量定义域,mfType是工具箱提供的一种隶属函数,mfParams是此隶属函数的相应参数,如