模糊解释结构模型
Fuzzy Interpretative Structural Modelling Method 简称FISM方法 直译为解释结构模型
$$ \begin{array} {c|c}{全称} & 英文全称& 简写 \\ \hline 不确定解释结构模型方法 &\color{red}{Uncertain \quad Interpretative \quad Structural \quad Modeling \quad Method} &\color{blue}{UISM} \\ \hline 模糊解释结构模型方法 &\color{red}{Fuzzy \quad Interpretative \quad Structural \quad Modeling \quad Method} &\color{blue}{FISM} \\ \hline 解释结构模型方法 &\color{red}{Interpretative \quad Structural \quad Modeling \quad Method} &\color{blue}{ISM}\\ \hline \end{array} $$
三者的关系: $ \color{blue}{ISM \subset } \color{blue}{FISM \subset } \color{blue}{UISM} $
模糊数与模糊矩阵的概念
Generalized Fuzzy Numbers && Fuzzy Matrix
上面的话很拗口,我也觉得,不过实际大家都这么用。
解释结构模型方法的两个前提:
第一、系统由要素组成。
第二、要素之间存不存在二元关系,如果有则用一条有向边标识。
基于这两个前提,可以把图跟布尔矩阵一一对应起来。
假设布尔矩阵为$A$,$A$中的值用${a_{ij}}$表示。$A={(a_{ij})_{n \times n}}$
$$ a_{ij}= \begin{cases} 0, \text{ $\mathbb {e}_i$}\rightarrow \text{$\mathbb {e}_j$ 没有直接二元关系} \\ 1, \text{ $\mathbb {e}_i$}\rightarrow \text{$\mathbb {e}_j$ 有直接二元关系} \end{cases} $$
ISM中的布尔矩阵$A$ 是一个方阵。而这个方阵中行与列代表同一个要素。
布尔方阵$A$ 中对角线的取值是一个特别值得关注的地方。通常主对角线的取值为0。即要素自身到自身的关系用0来标识。
$$图的示意图 \Rightarrow \require{AMScd} \begin{CD} A @>>> B\\ @V V V @VV V\\ C @>>> D \end{CD} \Longleftrightarrow \begin{array} {c|c|c|c|c|c|c|c} {M_{4 \times 4}} & A & B & C & D \\ \hline A & 0 & \color{red}{1} & \color{red}{1} & 0 \\ \hline B & 0 & 0 & 0 & \color{red}{1}\\ \hline C & 0 & 0 & 0 & \color{red}{1}\\ \hline D & 0 & 0 & 0 & 0 \\ \hline \end{array} \Leftarrow 布尔矩阵的表格型表示方法 $$
上述模型的建立只是理想状态才成立。实际建模过程存在着一个难点。就是要素$e_i$ 对要素$e_j$的直接二元关系存在着不确定性,而对这种不确定性,通常用一个模糊数来表示即:${a_{ij}} \in [0,1]$。
模糊矩阵中取值描述如下:
$$ a_{ij}= \begin{cases} 0 , \text{ $e_i$}\rightarrow \text{$e_j$ 不存在直接可达关系} \\ f, \text{ $e_i$}\rightarrow \text{$e_j \quad \quad f \in$ (0,1)} f的值为模糊测度值 \\ 1, \text{ $e_i$}\rightarrow \text{$e_j$ 存在直接二元可达关系} \end{cases} $$
上述分段描述可简化为:$$ a_{ij}= f, \text{ $e_i$}\rightarrow \text{$e_j \quad \quad f \in$ [0,1]} \quad \quad f的值为模糊测度值 $$
模糊数:
1965年,查德(L. A. Zadeh)教授发表了《模糊集合》,标志着模糊数学的诞生。模糊性概念就是边界不清晰、外延不确定的概念。以模糊集合代替原来的经典集合。模糊数学是精确的数学,是对模糊事物进行精确化的描述。模糊集合论是模糊数学的基础。它为人们提供了一种处理不确定性和不精确性问题的新方法,是模拟人脑处理模糊信息的工具,也是运用数学方法研究和处理模糊性现象的一门分支。
模糊数通常指的是三角模糊数(triangular fuzzy number)即给定论域$U$上的一个模糊集 是指对任何$x \in U$,都有一个数$\mu(x)\in [0, 1]$与之对应,$\mu (x)$ 称为$x$对$ U$的隶属度,$\mu$ 称为$x$的隶属函数。
现在的研究容许有非正规 (Non-normal) 模糊数的存在,此类的模糊数又可称为一般性模糊数 (Generalized Fuzzy Numbers)。
模糊数常被用来表示人类的语义,如:很好、普通…等。极端点比如骂人的话,TMD、SB等等都可以用非正规的模糊数,或者一般性模糊数的一个数值来表达。
跟布尔矩阵不同,模糊矩阵的值域是$[0,1]$的范围。而要素之间的关系是在统一度量上的模糊关系,通常用归一化的方法将其值域定义在$[0,1]$的区间内。
模糊矩阵获得实例
设:评价模糊论域用完全不行,很不清楚,不清楚,马马虎虎,清楚,非常清楚,来描述要素之间的二元关系。
$$ \begin{array} {c|c} \color{blue}{描述用语} & \color{blue}{分值} & \color{blue} {归一化模糊值} \\ \hline \color{blue}{完全不行} &\color{blue}{0} &\color{blue}{0} \\ \hline \color{blue}{很不清楚} &\color{blue}{1} &\color{blue}{0.2} \\ \hline \color{blue}{不清楚} &\color{blue}{2} &\color{blue}{0.4} \\ \hline \color{blue}{马马虎虎} &\color{blue}{3} &\color{blue}{0.6} \\ \hline \color{blue}{清楚} &\color{blue}{4} &\color{blue}{0.8} \\ \hline \color{blue}{非常清楚} &\color{blue}{5} &\color{blue}{1} \\ \hline \end{array} $$
$$ \require{AMScd} \begin{CD} A @>马马虎虎>> B\\ @V V 清楚V @V清楚V V\\ C @>>不清楚> D \end{CD} \Longleftrightarrow \begin{array} {c|c|c|c|c|c|c|c} {M_{4 \times 4}} & A & B & C & D \\ \hline A & 0 & \color{blue}{3} & \color{blue}{4} & 0 \\ \hline B & 0 & 0 & 0 & \color{blue}{4}\\ \hline C & 0 & 0 & 0 & \color{blue}{2}\\ \hline D & 0 & 0 & 0 & 0 \\ \hline \end{array} \Longleftrightarrow \begin{array} {c|c|c|c|c|c|c|c} {M_{4 \times 4}} & A & B & C & D \\ \hline A & 0 & \color{red}{0.6} & \color{red}{0.8} & 0 \\ \hline B & 0 & 0 & 0 & \color{red}{0.8}\\ \hline C & 0 & 0 & 0 & \color{red}{0.4}\\ \hline D & 0 & 0 & 0 & 0 \\ \hline \end{array}$$
模糊算子对
Fuzzy Operator Pair
模糊运算,就是模糊数跟模糊数之间的运算。对于模糊矩阵来说它存在两个基本运算,对应普通代数的运算来说就是乘、加
在布尔运算中,两个基础运算即普通代数形式的加法运算与乘法运算,布尔代数中只能取0或者1。其运算规则如下:
布尔乘:$ 1\times 1=1 \qquad 1\times 0= 0\times 1=0 \qquad 0\times 0=0 $
布尔加:$ 1+1=1 \qquad 1+ 0= 0+ 1=1 \qquad 0+ 0=0 $
此两个布尔运算称之为布尔算子对。跟最普通的加法乘法运算相比,最大的区别在1+1=1因此为了跟加法与乘法符号区别开来。
通常会用$\bigodot$来代替$\times$;用$\bigoplus$代替$+$。
跟布尔算子对相对应,在模糊数域的运算法则叫模糊算子。广义的模糊算子对有无穷尽种。常见的模糊算子对有如下4种。
算子对名称 |
模糊乘 $\bigodot$ |
模糊加$\bigoplus$ |
---|---|---|
$$查德算子对 \\最大最小算子对$$ | $$ 最小运算,用\land 或者 min()表示 $$ | $$ 最大运算,用 \vee 或者 max()表示 $$ |
$$ 0.6 \odot 0.1=0.1 \quad 0.6 \land 0.1=0.1 \quad min(0.6,0.1)=0.1 $$ | $$ 0.6 \oplus 0.1=0.6 \quad 0.6 \vee 0.1=0.6 \quad max(0.6,0.1)=0.6 $$ | |
$$概率算子对$$ | $$ \quad \hat{f}(a,b)=a b $$ | $$ \quad \breve{f}(a,b)=(a + b)-ab $$ |
$$ 0.6 \odot 0.1=0.06 \quad \hat{f}(0.6,0.1)=0.06 $$ | $$ 0.6 \oplus 0.1=(0.6+0.1)-0.06=0.64 \quad \breve{f}(0.6,0.1)=0.64 $$ | |
$$有界算子对$$ | $$ \quad \hat{f}(a,b)=max(0,a+b-1) $$ | $$ \quad \breve{f}(a,b)=min(1,a + b) $$ |
$$ 0.6 \odot 0.1=0 \\ \quad \hat{f}(0.6,0.1)=max(0,0.7-1)=max(0,-0.3)=0 $$ | $$ 0.6 \oplus 0.1=min(1,0.6+0.1)=min(1,0.7)=0.7 \\ \quad \breve{f}(0.6,0.1)=0.7 $$ | |
$$爱因斯坦算子对$$ | $$ \quad \hat{f}(a,b)= \frac {ab}{1+(1-a)(1-b)} $$ | $$ \quad \breve{f}(a,b)=\frac {a+b}{1+ab} $$ |
$$ 0.6 \odot 0.1= \hat{f}(0.6,0.1) \\ = \frac {0.6 \times 0.1}{1+(1-0.6)(1-0.1)}=\frac {0.06}{1.36}=0.0441 $$ | $$ 0.6 \oplus 0.1= \breve{f}(0.6,0.1) \\ = \frac {0.6+0.1}{1+0.6 \times 0.1}=\frac {0.7}{1.06}=0.66$$ |
广义模糊算子对
广义模糊算子有如下特点:
1、布尔加与布尔乘是任意一个广义模糊算子对的特例。
2、乘算子符合交换律与结合律。
3、任意广义模糊算子对,其中的乘算子与加算子重新组合在一起,即形成一个新的模糊算子对。
陈永义在Fuzzy算子探讨(模糊数学,1982,2)中对广义的模糊算子进行了界定。
定义 一个广义模糊“与”算子 $ \odot 其中模糊论域 I=[0,1] 对任意a,b,c∈I,满足:对每一变量在I内连续、单调增加; $
$1、 \quad a\odot 0=0, \quad a\odot 1=1 $
$2、 \quad a\odot b= b \odot a $
$3、 \quad a\odot (b \odot c)= a\odot c \odot b $
把上述映射算符 $ \odot $看成一个函数,而这个函数就是乘法符号。很显然提到的4种算子对都符合上述规则。同理,基于广义模糊算子的构造可以通过集合的直积来构造。
有定义可得到推论:集合$X$为目前已有的模糊算子的模糊交集法则;集合$Y$为目前已有的模糊算子的模糊并集法则;对于直积$Z=X × Y={(x,y) |x∈X, y∈Y}$。且$Z$中任意一元素$(x,y)$与$(y,x)$等价。该直积中的元素为一模糊算子。
即任意的模糊交集运算跟任意的一种模糊并集运算都可以组成一个模糊算子。因此$N$个不重复的模糊算子对可以组合成$N^2$个算子对。
16对模糊算子对
$$ \begin{array} {c|c}{序号} & 模糊加 \oplus & 模糊乘 \odot \\ \hline 1 &\color{red}{查德、最大} &\color{blue}{查德、最小} \\ \hline 2 &\color{red}{查德、最大} &\color{blue}{概率乘} \\ \hline 3 &\color{red}{查德、最大} &\color{blue}{有界乘} \\ \hline 4 &\color{red}{查德、最大} &\color{blue}{爱因斯坦乘} \\ \hline 5 &\color{red}{概率加} &\color{blue}{查德、最小} \\ \hline 6 &\color{red}{概率加} &\color{blue}{概率乘} \\ \hline 7 &\color{red}{概率加} &\color{blue}{有界乘} \\ \hline 8 &\color{red}{概率加} &\color{blue}{爱因斯坦乘} \\ \hline 9 &\color{red}{有界加} &\color{blue}{查德、最小} \\ \hline 10 &\color{red}{有界加} &\color{blue}{概率乘} \\ \hline 11 &\color{red}{有界加} &\color{blue}{有界乘} \\ \hline 12 &\color{red}{有界加} &\color{blue}{爱因斯坦乘} \\ \hline 13 &\color{red}{爱因斯坦加} &\color{blue}{查德、最小} \\ \hline 14 &\color{red}{爱因斯坦加} &\color{blue}{概率乘} \\ \hline 15 &\color{red}{爱因斯坦加} &\color{blue}{有界乘} \\ \hline 16 &\color{red}{爱因斯坦加} &\color{blue}{爱因斯坦乘} \\ \hline \end{array} $$
上述16个模糊算子对是根据4个基本的模糊算子对,通过组合而得到的。
事实上符合广义的模糊算子对有无穷多种,具体的可以参考距离、相似度、范数的例子。
模糊可达矩阵
Fuzzy Reachable Matrix
对于布尔矩阵,可达矩阵$R$可以通过连乘方式获得
$A+I=B$
$B^{(k-1)}≠B^{k}=B^{(k+1)}=R$
设:原始模糊矩阵$\tilde A$ 单位矩阵为$I$
$\tilde B=\tilde A +I$
当:$ \tilde B^{(k-1)}≠\tilde B^{k}=\tilde B^{(k+1)}= \tilde R$
$\tilde R$称为模糊可达矩阵
$\tilde B$具有如下形式:
$$ \begin{array} {c|c|c|c|c|c|c|c}{ \tilde B_{n \times n}} &1 &2 &{\cdots} &n \\ \hline 1 & \color{blue}{1}&{b_{12}}&{\cdots}&{b_{1n}}\\ \hline 2 & {b_{21}}&\color{blue}{1}&{\cdots}&{b_{2n}}\\ \hline {\vdots} &{\vdots}&{\vdots}&\color{blue}{1}&{\vdots}\\ \hline n & {b_{n1}}&{b_{n2}}&{\cdots}&\color{blue}{1}\\ \hline \end{array} $$
设:$\tilde C = \tilde B \times \tilde B $
$ \tilde C=\left[ c_{ij} \right]_{n \times n} \quad \tilde B=\left[ b_{ij} \right]_{n \times n}$
$$ \begin{equation}\begin{split} c_{ij}&=\sum_{k=1}^n b_{ik}\odot b_{kj} \\ &=(b_{i1} \odot b_{1j}) \oplus (b_{i2} \odot b_{2j}) \oplus (b_{i3} \odot b_{3j}) \cdots \oplus \cdots(b_{in} \odot b_{nj})\\ \end{split}\end{equation} $$
其中$ \odot 为模糊乘算子 $
其中$ \oplus 为模糊加算子 $
对于任意$c_{ij}$具有单调递增的特性,故模糊可达矩阵必定存在。且当模糊加算子取查德算子即取最大时,其收敛值可以不为1。
阈值集合
Threshold Value Set
模糊矩阵阈值集合定义: 任意给定模糊矩阵$\tilde S$中,其所有不为0的去重后矩阵值的集合,记$\ddot \Delta $
$$ \tilde S=\begin{array} {c|c|c}{M_{6 \times6}} &F1 &F2 &F3 &F4 &F5 &F6\\ \hline F1 &1 &0 &0.3 &0.3 &0 &0.5\\ \hline F2 &0 &1 &0 &0 &0.4 &0\\ \hline F3 &0 &0.2 &1 &0 &0 &0\\ \hline F4 &0 &0.7 &0 &1 &0.3 &0\\ \hline F5 &0 &0 &0 &0 &1 &0\\ \hline F6 &0 &0 &0.2 &0 &0 &1\\ \hline \end{array} $$
$$ \ddot \Delta=(0.2,0.3,0.4,0.5,0.7,1)$$
阈值集合中为什么要去除0
不把零放入阈值集合,跟模糊矩阵取截距求解的方式有关。可以往上看一般性模糊数
模糊可达矩阵的阈值集合有何特征?
1、跟采用的模糊算子对有着密切的关系
2、阈值集合一定含有1,因为模糊相乘矩阵中对角线都为1。
$\tilde R$ 和$\tilde B$ 的值域集合跟模糊算子对之间的关系。
1、模糊加算子 非 $ \vee $ 算子,即非查德取最大算子,其$\tilde R$ 的阈值集合都为1 即$\tilde R$为布尔矩阵。
2、查德算子对,设$\tilde R$ 和$\tilde B$ 的阈值集合分别为 $ \ddot {\Delta R}$ 和$\ddot {\Delta B}$ 有 $ \ddot {\Delta R} \subseteq \ddot {\Delta B}$ 。
3、含 $ \vee $ 算子的非查德算子对,设$\tilde R$ 和$\tilde B$ 的阈值集合分别为 $ \ddot {\Delta R}$ 和$\ddot {\Delta B}$ $ \ddot {\Delta R} \subseteq \ddot {\Delta B}$的关系不成立 。
模糊解释结构模型 $\Longrightarrow $ 解释结构模型
$ \require{AMScd} \begin{CD} FISM @> \lambda \quad intercept >>ISM \\ \end{CD} $
不确定解释结构模型中,当不确定的值用一个测度来表示时,可以用夹逼的思路来处理。
夹逼处理的过程点击夹逼思路是如何来处理不确定解释结构模型的查看
夹逼思路处理不确定矩阵时有定义极化。该操作就是取截距。对于任意模糊矩阵的$ \lambda $截距
模糊矩阵$\tilde R =( \tilde r_{ij})_{n \times n} $ 其$\lambda$ 截距记$R_{\lambda}=(r_{ij})_{n \times n}$
定义A:$$r _{ij}= \left\{ \begin{array}{ll} 1 & \textrm{当:$\tilde r_{ij} >\lambda $} \\ 0 & \textrm{当:$\tilde r_{ij} < \lambda $ }\end{array} \right.$$
$ R_{\lambda} $ 为 $ \tilde R $ 的 $ \lambda $ 截矩阵,$ \lambda $ 为$ \tilde R$ 的水平划分截距。
根据上述定义,当阈值集合中某个值恰好等于$\lambda $ 且矩阵中存在有$x$个,则对应的截距阵有$2^x$个。
由于模糊矩阵其值域具有离散的特征,在实际处理是根据如下两个定义进行处理。
定义B1:$$ r _{ij}= \left\{ \begin{array}{ll} 1 & \textrm{当:$ \tilde r_{ij} ≥\lambda $}\\ 0 & \textrm{当:$ \tilde r_{ij} < \lambda $ } \end{array} \right. $$
或定义B2:$$r _{ij}= \left\{ \begin{array}{ll}1 & \textrm{当:$ \tilde r_{ij} > \lambda $} \\ 0 & \textrm{当:$ \tilde r_{ij} ≤ \lambda $ } \end{array} \right. $$
上述两类定义有着巨大的计算量的改变。
设某个模糊矩阵有20个矩阵单元的值为0.3,按照定义A,当$ \lambda=0.3$时由模糊矩阵得到的该截距下的儿子矩阵有$2^{20}=1,048,576$个矩阵。而按照定义B1或者定义B2,则只有1个儿子矩阵。
此外从论域连续性的角度考虑可以观察到定义B1、或者定义B2的合理性。
$$ F\_matrics=\begin{array} {c|c|c}{M_{6 \times6}} &A1 &A2 &A3 &A4 &A5 &A6\\ \hline A1 &0 &0.4 &0 &0 &0 &0\\ \hline A2 &0 &0 &0.4 &0 &0 &0\\ \hline A3 &0 &0 &0 &0.4 &0 &0\\ \hline A4 &0 &0 &0 &0 &0.4 &0\\ \hline A5 &0 &0 &0 &0 &0 &0.4\\ \hline A6 &0 &0 &0 &0 &0 &0\\ \hline \end{array} $$
按照定义A考察当截距取0.4的时候矩阵中为0.4的全部转化为不确定值,则总共有32个截距阵。当 $0 < \lambda < 0.4 $ 连续论域中的一个值时,其截距阵是一致的。
按照定义B1考察整个论域$(0,1]$ 范围内只存在两个截距阵,而跟定义A差异的30个截距阵,属于突变性质的矩阵,或者可称为过渡矩阵。
模糊解释结构模型 处理步骤以及相关讨论
FISM Process discussion
FISM的步骤如下:
$$ \require{cancel} \require{AMScd} \begin{CD} \tilde B=\left[ \tilde b_{ij} \right]_{n \times n}@>选择模糊算子对>> \tilde R=\left[ \tilde r_{ij} \right]_{n \times n}@>根据值域集合求模糊可达矩阵的截距阵>>R_{\lambda}=\left[ r_{ij} \right]_{n \times n}@>区域划分、缩边、缩点、轮换法层级划分>>最简层次化的菊花链\\\end{CD}$$
讨论
1、目前绝大部分使用的FISM的文章都是脱下裤子放屁多此一举,或者说是论述不完整,或者说是交代不明白,或者说压根就是错的!
大部分的文章方法如下$$ \require{cancel} \require{AMScd} \begin{CD} \tilde B=\left[ \tilde b_{ij} \right]_{n \times n}@>最大最小算子对>> \tilde R=\left[ \tilde r_{ij} \right]_{n \times n}@>\lambda=0.5>>R_{\lambda}=\left[ r_{ij} \right]_{n \times n}@>经典ISM方法>>层次化拓扑图\\ \end{CD}$$
上述方法是运用小学所学的四舍五入的原理,而采用的求截距阵的方法。之所以说是脱下裤子放屁多此一举,核心点在于如果一开始就确定了以0.5为截距,获得截距阵,根本不必要先求模糊可达矩阵。直接对相乘模糊矩阵进行判断即可。
因为有$$( B_{\lambda }=\left[ b_{ij} \right]_{n \times n}) \cong (R_{\lambda}=\left[ r_{ij} \right]_{n \times n}) \\$$
$$ B_{\lambda } \cong R_{\lambda} \quad \quad 即: \quad B_{\lambda } 的可达矩阵与R_{\lambda}可达矩阵相等 $$
2、模糊算子对中没有取最大算子按照本文通用的方法没有意义。因为可达矩阵都为布尔矩阵。因此其步骤可以如下方式:
第一、建立可达步骤的概念。即模糊矩阵连乘的次数。
第二、设k为连乘可接受的步骤,经过k步连乘后得到模糊矩阵 $\tilde K $
第三、引入 0.05这个相关性的常数(统计学中常用), 即p值小于0.05统计学意义。对应到FISM,则按照 $\lambda =0.95 $ 求截距阵
第四、对截距阵进行区域划分、缩边、缩点、层级划分四大运算,得出最终的菊花链拓扑图
3、求模糊可达矩阵的过程,其本质就是一个在模糊测度上的聚类过程,其中查德算子对具有独特的特性。
设模糊相乘矩阵$\tilde B$ 其采用查德算子对得到模糊可达矩阵$\tilde R$ 且阈值集合分别为 $ \ddot {\Delta B}$ 和$\ddot {\Delta R}$ 有$ \ddot {\Delta R} \subseteq \ddot {\Delta B}$ 。
对于$\tilde B$ 直接根据$ \ddot {\Delta B}$求截距阵,其数目假设为$b_{number}$
对于$\tilde R$ 直接根据$ \ddot {\Delta R}$求截距阵,其数目假设为$r_{number}$
很显然有$r_{number}≤b_{number}$
$ B_{\lambda } \cong R_{\lambda}$
即 采用最大最小模糊算子,给定的截距$\lambda$有模糊相乘矩阵的截距阵的可达矩阵等于模糊可达矩阵截距阵的可达矩阵。
因此采用先求$ \ddot {\Delta R}$的方法,就是先进行聚类。
从算法效率来说由于$r_{number}≤b_{number}$意味则计算ISM的数量要少,其效率显然要高很多。
4、FISM与UISM解之间的关系
对于不含有取最大算子的方式求解出的结构它就是足月矩阵。
对于含有最大算子的方式求解出的结构它就是UISM求出的异构体数目的一个子集。
FISM就是在测度方向上给出特定的一个或者多个UISM的儿子矩阵。
5、一般性模糊数下的FISM有什么特征
一般性模糊数一般就取10个值或者5个值,取多了没有意义。假定采用了10段的刻度,采用查德算子对,得到的模糊可达矩阵的阈值集合的数目不会超过10个,一般也就5个左右,因此,最终得到的菊花链拓扑就是那么几个,不会超过10个。
因此对于ISM来说,FISM就是给出一组在不同模糊测度下的ISM结构。如果觉得给多个麻烦,那就让人选一个就行,只要能自圆其说,给出足够合理的解释。