【模糊逻辑】模糊集合和模糊逻辑-1
2.1Crisp Sets精确集
在具体讲述Fuzzy Sets模糊集之前,先来讲讲,与之对应的精确集。
集合A由所有可列元素构成,其中各元素可被定义
x
⊂
A
x\subset A
x⊂A。因此,A可以被定义为
A
=
{
x
∣
x
满足某条件时
}
A=\{x|x满足某条件时\}
A={x∣x满足某条件时}。
此处引入0-1隶属函数(Membership Function,MF),也被称为A的特征函数、判别函数、指示函数,记作
μ
A
(
x
)
\mu_A(x)
μA(x)
A
⇒
μ
A
(
x
)
=
{
1
,
x
∈
A
0
,
x
∉
A
A\Rightarrow \mu_A(x)= \left\{ \begin{array}{lr} 1 , x\in A & \\ 0 , x\notin A & \end{array} \right.
A⇒μA(x)={1,x∈A0,x∈/A
其中集合
A
A
A可以看做是
X
X
X的子集,用一个数学等式,MF
μ
A
(
x
)
\mu_A(x)
μA(x)形成映射。
例2.1 城市里的车子
以一个城市的所有车子为例,根据不同的依据,可以从不同的方式来描述该集合,
假设一辆车要么有六个汽缸,要么没有——这是一个非常明确的要求。如果您的汽车有四个气缸,那么它的四缸汽车子集的MF值(即成员等级)为1,而六缸或八缸汽车子集的成员等级为0。
例2.2 雷达
类似的,以雷达为例,根据频率,若在某一频段,MF为1,其余情况均为0;
根据发射平台的不同,如果是在地面上发射的,MF为1,其余情况为0;
此种举例还有很多,不一一举例。
2.2 从精确集到模糊集
模糊集 F F F是精确集,其值域区间为 [ 0 , 1 ] [0,1] [0,1]
定义2.1 第一类模糊集
第一类模糊集(type-1 fuzzy set)
F
F
F的MF
μ
F
(
x
)
\mu_F(x)
μF(x)
F
=
{
(
x
,
μ
F
(
x
)
)
∣
x
∈
X
}
F=\{(x,\mu_F(x))|x\in X\}
F={(x,μF(x))∣x∈X}
值得注意的是,MF提供了一种度量集合X中元素与模糊集之间的相似程度的方式。
如果集合X为连续,则模糊集可符号化表示为
F
=
∫
x
∈
X
μ
F
(
x
)
/
x
F=\int_{x\in X}\mu_F(x)/x
F=∫x∈XμF(x)/x
其中
∫
\int
∫表示对于
x
∈
X
x\in X
x∈X的集合体
如果集合X为离散,则模糊集可表示为
F
=
∑
x
∈
X
μ
F
(
x
)
/
x
F=\sum_{x\in X}\mu_F(x)/x
F=x∈X∑μF(x)/x
其中
∑
\sum
∑表示对于
x
∈
X
x\in X
x∈X的集合体
例2.4 国内汽车还是国外汽车
在大部分情况下,我们都会比较容易来判断一辆汽车是国外汽车,还是国内汽车——根据品牌源于什么国家,即可判断,是一个精确集;
但是值得注意的是,当全球化的不断推进,所谓的一个国家的品牌汽车,则往往需要来自全球各大部件供应商的零件提供,那么一辆车是国内还是国外车,则显得模糊不清起来。因此,引入MF
μ
D
(
x
)
\mu_D(x)
μD(x)和
μ
F
(
x
)
\mu_F(x)
μF(x)来评价是国内车还是国外车。如果75%的零件都源于国内,那么有
μ
D
(
0.75
)
=
0.9
\mu_D(0.75)=0.9
μD(0.75)=0.9和
μ
F
(
0.75
)
=
0.25
\mu_F(0.75)=0.25
μF(0.75)=0.25。如下图所示,得到对应的MF。
其中,细心的读者会发现,
μ
D
(
x
)
\mu_D(x)
μD(x)和
μ
F
(
x
)
\mu_F(x)
μF(x)在一些情况是两者的和不为1。在此书中,无需归一化。有些文章将其归一化,可将其称为模糊划分(Fuzzy Partition)
一些基本的第一类模糊集的MF
guassian MF
μ
F
(
x
)
=
e
−
x
−
m
2
σ
2
\mu_F(x)=e^{-\frac{x-m}{2\sigma^2}}
μF(x)=e−2σ2x−m
可以利用matlab中的函数 gaussmf(x,[sigma,m])来绘制;该MF为非线性、可导的
x = 0:0.1:10;
y = gaussmf(x,[2 5]);
plot(x,y)
xlabel('gaussmf, P=[2 5]')
triangular MF
μ
F
(
x
)
=
=
{
0
,
x
<
a
x
−
a
b
−
a
,
a
≤
x
<
b
c
−
x
c
−
b
,
b
≤
x
<
c
0
,
x
>
c
\mu_F(x)== \left\{ \begin{array}{lr} 0 , x<a & \\ \frac{x-a}{b-a} ,a\leq x<b &\\ \frac{c-x}{c-b} ,b\leq x<c &\\ 0 , x>c & \end{array} \right.
μF(x)==⎩
⎨
⎧0,x<ab−ax−a,a≤x<bc−bc−x,b≤x<c0,x>c
可以利用matlab中的函数 trimf(x,[a,b,c])来绘制;该MF为线性、不可导的
x = 0:0.1:10;
y = trimf(x,[3 6 8]);
plot(x,y)
xlabel('trimf, P = [3 6 8]')
ylim([-0.05 1.05])
Sigmoidal MF
μ
F
(
x
)
=
1
1
+
e
−
a
(
x
−
c
)
\mu_F(x)=\frac{1}{1+e^{-a(x-c)}}
μF(x)=1+e−a(x−c)1
可以利用matlab中的函数sigmf(x,[a,c])来绘制;该MF为非线性、可导的
x = 0:0.1:10;
y1 = sigmf(x,[2 4]);
y2 = sigmf(x,[-2 4]);
plot(x,y1);hold on;
plot(x,y2);
xlabel('sigmf, P1 = [2 4] P2 = [-2 4]')
ylim([-0.05 1.05])
legend("P1","P2")
trapezoidal MF
μ
F
(
x
)
=
=
{
0
,
x
<
a
x
−
a
b
−
a
,
a
≤
x
<
b
1
,
b
≤
x
<
c
d
−
x
d
−
c
,
c
≤
x
<
d
0
,
x
>
c
\mu_F(x)== \left\{ \begin{array}{lr} 0 , x<a & \\ \frac{x-a}{b-a} , a\leq x<b &\\ 1 , b\leq x<c &\\ \frac{d-x}{d-c} , c\leq x<d &\\ 0 , x>c & \end{array} \right.
μF(x)==⎩
⎨
⎧0,x<ab−ax−a,a≤x<b1,b≤x<cd−cd−x,c≤x<d0,x>c
可以利用matlab中的函数trapmf(x,[a,b,c,d])来绘制;该MF为线性、不可导的
x = 0:0.1:10;
y = trapmf(x,[1 5 7 8]);
plot(x,y)
xlabel('trapmf, P = [1 5 7 8]')
ylim([-0.05 1.05])
Generalized Bell MF
μ
F
(
x
)
=
1
1
+
∣
x
−
c
b
∣
2
b
\mu_F(x)=\frac{1}{1+|\frac{x-c}{b}|^{2b}}
μF(x)=1+∣bx−c∣2b1
可以利用matlab中的函数 gbellmf(x,[a,b,c])来绘制;该MF为非线性、可导的
x = 0:0.1:10;
y = gbellmf(x,[2 4 6]);
plot(x,y)
xlabel('gbellmf, P=[2 4 6]')