模糊DEMATEL-ISM-MICMAC

方法概述

模糊DEMATEL-ISM-MICMAC 将模糊集理论、决策实验室分析法(DEMATEL)、解释结构模型(ISM)和交叉影响矩阵相乘法(MICMAC)有机结合,形成一套完整的系统因素分析框架。该方法能够处理专家评价中的模糊性和不确定性,同时量化因素间的影响强度、揭示层次结构,并识别因素的驱动力与依赖度。

四种方法/理论的互补优势:

  • 模糊集理论:采用三角模糊数表示专家评价,保留评价中的模糊信息,通过 CFCS 或重心法去模糊化。
  • DEMATEL:量化因素间的直接影响强度,计算中心度与原因度,识别关键因素及其因果属性。
  • ISM:基于 DEMATEL 得到的综合影响矩阵,通过阈值 λ 二值化构建邻接矩阵,进而计算可达矩阵,通过迭代分层揭示系统的递阶层次结构。
  • MICMAC:基于同一可达矩阵,计算每个因素的驱动力(行和)和依赖度(列和),绘制驱动力-依赖度散点图,将因素划分为驱动、依赖、关联、独立四类。

融合流程:

  1. 收集多位专家对因素间直接影响程度的打分(0~4 分),将清晰分数转换为三角模糊数。
  2. 加权聚合所有专家的模糊矩阵,采用 CFCS 或重心法去模糊化,得到精确直接影响矩阵。
  3. 执行 DEMATEL 分析,计算综合影响矩阵、中心度、原因度,绘制因果散点图。
  4. 根据设定的阈值 λ 将综合影响矩阵二值化,得到邻接矩阵。
  5. 通过布尔运算迭代(或阈值二值化)生成可达矩阵。
  6. 基于可达矩阵进行 ISM 层级划分,构建骨架矩阵并绘制层次结构图。
  7. 基于同一可达矩阵进行 MICMAC 分析,计算驱动力与依赖度,绘制四象限散点图。
  8. 综合三种方法的结果,全面识别系统的关键驱动因素、结果因素及层次结构。

该方法适用于因素关系复杂、评价具有模糊性、需要同时量化影响强度、理清层次结构和识别因素重要性的决策问题,如供应链风险、技术创新、战略管理等。

计算步骤

1. 构建模糊直接影响矩阵

设有 \(n\) 个因素,\(K\) 位专家。每位专家给出一个 \(n \times n\) 的直接影响矩阵 \(X^{(k)}\),其中元素 \(x_{ij}^{(k)}\) 表示专家 \(k\) 认为因素 \(i\) 对因素 \(j\) 的直接影响强度(通常采用 0~4 分制:0=无影响,1=影响很低,2=影响低,3=影响高,4=影响很高),且 \(x_{ii}^{(k)} = 0\)

根据预设的模糊语义表,将每个清晰评分转换为三角模糊数 \((l_{ij}^{(k)}, m_{ij}^{(k)}, r_{ij}^{(k)})\)。平台默认语义表如下(可自定义):

专家评价 影响数值 三角模糊数 (l, m, r)
没有影响 0 (0, 0, 0.25)
影响很低 1 (0, 0.25, 0.5)
影响低 2 (0.25, 0.5, 0.75)
影响高 3 (0.5, 0.75, 1.0)
影响很高 4 (0.75, 1.0, 1.0)

2. 聚合多个专家评价

设专家 \(k\) 的权重为 \(w_k\)\(\sum_{k=1}^{K} w_k = 1\)),则聚合后的模糊直接影响矩阵 \(\tilde{A} = [\tilde{a}_{ij}]\) 中各元素的三角模糊数为:

\[ l_{ij} = \sum_{k=1}^{K} w_k \cdot l_{ij}^{(k)},\quad m_{ij} = \sum_{k=1}^{K} w_k \cdot m_{ij}^{(k)},\quad r_{ij} = \sum_{k=1}^{K} w_k \cdot r_{ij}^{(k)} \]

3. 去模糊化(转换为精确值)

平台支持两种去模糊化方法:

(1)CFCS 法

CFCS 法是处理三角模糊数的常用方法,计算过程如下:

设全局最小值和最大值: \[ \min l = \min_{i,j} l_{ij},\quad \max r = \max_{i,j} r_{ij},\quad \Delta = \max r - \min l \]

对于每个 \(l_{ij}, m_{ij}, r_{ij}\)

  • 标准化

    \[ xl_{ij} = \frac{l_{ij} - \min l}{\Delta},\quad xm_{ij} = \frac{m_{ij} - \min l}{\Delta},\quad xr_{ij} = \frac{r_{ij} - \min l}{\Delta} \]

  • 左右标准化值

    \[ xl^s_{ij} = \frac{xm_{ij}}{1 + xm_{ij} - xl_{ij}},\quad xr^s_{ij} = \frac{xr_{ij}}{1 + xr_{ij} - xm_{ij}} \]

  • 总标准化值

    \[ x_{ij} = \frac{xl^s_{ij}(1 - xl^s_{ij}) + (xr^s_{ij})^2}{1 - xl^s_{ij} + xr^s_{ij}} \]

  • 反标准化

    \[ z_{ij} = \min l + x_{ij} \cdot \Delta \]

最终得到精确直接影响矩阵 \(Z = [z_{ij}]\)

(2)重心法

重心法直接取三角模糊数的算术平均值:

\[ z_{ij} = \frac{l_{ij} + m_{ij} + r_{ij}}{3} \]

4. 模糊 DEMATEL 分析

4.1 规范化直接影响矩阵

设去模糊化后的直接影响矩阵为 \(Z\),规范化方法(与经典 DEMATEL 相同)有三种:

  • 行和最大值法\(s = \max_i \sum_j z_{ij}\)\(B = Z / s\)
  • 列和最大值法\(s = \max_j \sum_i z_{ij}\)\(B = Z / s\)
  • 行和列和最大值法\(s = \max(\max_i \sum_j z_{ij},\; \max_j \sum_i z_{ij})\)\(B = Z / s\)

4.2 计算综合影响矩阵

规范影响矩阵 \(B\) 满足 \(\lim_{k\to\infty} B^k = 0\),综合影响矩阵 \(T\) 为: \[ T = B + B^2 + B^3 + \cdots = B (I - B)^{-1} \] 其中 \(I\) 为单位矩阵。实际计算中先求 \(I-B\) 的逆矩阵,再左乘 \(B\)

4.3 计算关键指标

  • 影响度 \(D_i = \sum_{j=1}^{n} t_{ij}\)
  • 被影响度 \(C_i = \sum_{j=1}^{n} t_{ji}\)
  • 中心度 \(M_i = D_i + C_i\)(反映因素的重要性)
  • 原因度 \(R_i = D_i - C_i\)\(R_i>0\) 为原因因素,\(R_i<0\) 为结果因素)

以中心度的均值 \(\bar{M}\) 为界,将因素分为四类:

  • \(R_i > 0, M_i > \bar{M}\):核心原因
  • \(R_i > 0, M_i \le \bar{M}\):一般原因
  • \(R_i < 0, M_i > \bar{M}\):核心结果
  • \(R_i < 0, M_i \le \bar{M}\):一般结果

5. 模糊 DEMATEL 到 ISM 的转换

5.1 确定阈值 \(\lambda\)

平台支持三种阈值计算方法:

  • 均值+标准差\(\lambda = \text{mean}(T) + \text{sd}(T)\)
  • 均值\(\lambda = \text{mean}(T)\)
  • 自定义:用户直接输入 \(\lambda \in [0,1]\)

5.2 生成邻接矩阵

将综合影响矩阵二值化:

\[ a_{ij}' = \begin{cases} 1, & t_{ij} \ge \lambda,\; i \neq j \\ 0, & \text{otherwise} \end{cases} \] 同时添加自反性(对角线为 1)。

5.3 生成可达矩阵

平台支持两种方法:

  • 布尔运算迭代(Warshall 算法):对 \(A' + I\) 进行传递闭包计算。
  • 阈值二值化:直接对 \(T + I\) 按阈值 \(\lambda\) 二值化。

5.4 计算骨架矩阵

骨架矩阵删除可达矩阵中的传递冗余关系,只保留必要的直接关系。对于任意 \(i \neq j\),若 \(r_{ij}=1\) 且存在 \(k \neq i,j\) 使得 \(r_{ik}=1\)\(r_{kj}=1\),则在骨架矩阵中置为 0;否则保留为 1。

6. ISM 层级划分

对于可达矩阵 \(R\),计算每个因素 \(i\) 的可达集 \(R(i)\)(第 \(i\) 行中值为 1 的列集合)、前因集 \(Q(i)\)(第 \(i\) 列中值为 1 的行集合)和交集 \(C(i) = R(i) \cap Q(i)\)

迭代分层:

  • 当前层级:找出满足 \(R(i) = C(i)\) 的因素,这些因素属于当前层级。
  • 移除这些因素,在剩余子系统中重复,直至所有因素被分配层级。
  • 最终得到从顶层(第 1 层)到底层(第 L 层)的序列。顶层因素通常是最终结果或输出,底层因素是根本驱动。

7. MICMAC 分析

基于可达矩阵 \(R\) 计算:

  • 驱动力 \(DP_i = \sum_{j=1}^{n} r_{ij}\)(行和)
  • 依赖度 \(DE_i = \sum_{j=1}^{n} r_{ji}\)(列和)

计算平均驱动力 \(\overline{DP}\) 和平均依赖度 \(\overline{DE}\),将因素分为四类:

驱动力 依赖度 属性 含义
>均值 ≤均值 驱动因素 系统根源,应优先干预。
≤均值 >均值 依赖因素 系统结果,需通过改善上游因素提升。
>均值 >均值 关联因素 核心因素,既驱动又依赖,敏感且重要。
≤均值 ≤均值 独立因素 相对孤立,可单独处理。

8. 结果可视化

  • 模糊 DEMATEL 散点图:以中心度为横坐标、原因度为纵坐标绘制(可切换为影响度-被影响度图),用颜色区分因素属性。
  • ISM 层次结构图:根据骨架矩阵和层级绘制有向层次图,顶层位于上方,底层位于下方,箭头表示直接影响。
  • MICMAC 散点图:以驱动力为横坐标、依赖度为纵坐标绘制四象限图,用颜色区分因素属性。

案例分析

案例背景:某企业拟分析影响产品质量的四个因素:员工技能(F1)、设备精度(F2)、原材料质量(F3)、工艺规范(F4)。邀请两位专家(权重相等)采用 0~4 分制打分,原始数据(仅示专家1)如下:

F1 F2 F3 F4
F1 0 3 2 4
F2 2 0 3 3
F3 1 2 0 1
F4 3 2 2 0

专家2矩阵略(假设与专家1相近)。经模糊转换、聚合、CFCS 去模糊化后得直接影响矩阵 \(A\)(数值简化):

\[ A = \begin{bmatrix} 0 & 2.5 & 2.0 & 3.5 \\ 2.0 & 0 & 2.5 & 2.5 \\ 1.5 & 2.0 & 0 & 1.5 \\ 2.5 & 2.0 & 2.0 & 0 \end{bmatrix} \]

计算过程

1. DEMATEL 分析

采用行和最大值法规范化:

  • 行和:\([8.0, 7.0, 5.0, 6.5]\),最大行和 \(s=8.0\)
  • 规范矩阵 \(B = A / 8.0\),计算综合影响矩阵 \(T = B(I-B)^{-1}\)(数值简化):

\[ T = \begin{bmatrix} 0.20 & 0.35 & 0.28 & 0.42 \\ 0.28 & 0.18 & 0.32 & 0.35 \\ 0.18 & 0.25 & 0.12 & 0.22 \\ 0.30 & 0.28 & 0.25 & 0.15 \end{bmatrix} \]

  • 影响度 \(D = [1.25, 1.13, 0.77, 0.98]\)
  • 被影响度 \(C = [0.96, 1.06, 0.97, 1.14]\)
  • 中心度 \(M = [2.21, 2.19, 1.74, 2.12]\),平均中心度 \(\bar{M}=2.06\)
  • 原因度 \(R = [0.29, 0.07, -0.20, -0.16]\)

因素属性:F1 核心原因,F2 一般原因,F3 一般结果,F4 一般结果。

2. 阈值 λ 与邻接矩阵

取 λ = 均值+标准差 = 0.28,二值化得邻接矩阵 \(A'\)(忽略对角线):

\[ A' = \begin{bmatrix} 0 & 1 & 0 & 1 \\ 0 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 \\ 1 & 0 & 0 & 0 \end{bmatrix} \]

3. 生成可达矩阵(布尔运算迭代)

添加自反性后,Warshall 算法得到可达矩阵 \(R\)

\[ R = \begin{bmatrix} 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 \\ 0 & 0 & 1 & 0 \\ 1 & 1 & 1 & 1 \end{bmatrix} \]

4. ISM 层级划分

  • 第 1 层:F3(可达集={3},前因集={1,2,3,4},交集={3})→ 满足 R=C。
  • 移除 F3,剩余 F1,F2,F4 中,满足条件的有 F1,F2,F4(均可达自身及彼此),故第 2 层为 F1,F2,F4。 最终层级:第 1 层 F3,第 2 层 F1,F2,F4。

5. 骨架矩阵

删除传递冗余后,骨架矩阵 \(S\)(仅保留直接关系):

\[ S = \begin{bmatrix} 0 & 1 & 1 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 \\ 1 & 0 & 1 & 0 \end{bmatrix} \]

6. MICMAC 分析

  • 驱动力(行和):F1=4, F2=4, F3=1, F4=4
  • 依赖度(列和):F1=2, F2=2, F3=4, F4=2
  • 平均值:\(\overline{DP}=3.25\)\(\overline{DE}=2.5\)

因素分类:

  • F1:驱动力>3.25,依赖度≤2.5 → 驱动因素
  • F2:驱动力>3.25,依赖度≤2.5 → 驱动因素
  • F3:驱动力≤3.25,依赖度>2.5 → 依赖因素
  • F4:驱动力>3.25,依赖度≤2.5 → 驱动因素

7. 综合解读

  • 模糊 DEMATEL:F1 为核心原因,F2 为一般原因,应优先管理;F3、F4 为结果因素。
  • ISM:F3 为顶层结果因素,F1、F2、F4 为底层驱动因素。
  • MICMAC:F1、F2、F4 为驱动因素,F3 为依赖因素。
  • 综合:F1、F2、F4 是系统的根本驱动,应作为管理重点;F3 是系统结果,需通过改善驱动因素来提升。

常见问题

Q1: 为什么需要模糊化处理?

A: 专家评价往往具有主观模糊性,直接使用清晰分数会丢失信息。三角模糊数能够保留评价的不确定性,去模糊化后得到更合理的影响强度。

Q2: 去模糊化方法如何选择?

A:

  • CFCS 法:更为复杂但精度更高,能保留三角模糊数的左右分布信息,推荐使用。
  • 重心法:简单快速,适用于对精度要求不高的场合。

Q3: 阈值 λ 如何确定?

A: 平台支持均值、均值+标准差、自定义三种方式。一般推荐“均值+标准差”,能筛选出显著影响关系;也可根据经验自定义。建议进行灵敏度分析,比较不同 λ 下的 ISM 结构和 MICMAC 分类稳定性。

Q4: 可达矩阵生成方法有何区别?

A:

  • 布尔运算迭代(Warshall):严格遵循传递闭包,适合无环系统,保证可达性。
  • 阈值二值化:直接对 \(T+I\) 二值化,不进行传递闭包,适合 DEMATEL 结果已包含间接关系的情况。通常推荐布尔运算迭代。

Q5: 支持多专家吗?如何设置权重?

A: 支持。Excel 文件中每个工作表代表一位专家的直接影响矩阵,用户可多选工作表,并为每个专家设置权重(自动归一化)。平台默认等权重。

Q6: 所有矩阵计算中的逆矩阵如果不可逆怎么办?

A: 平台会自动检测 \(I-B\) 是否可逆,若不可逆则使用广义逆(MASS::ginv)进行计算,并给出提示。一般情况下,DEMATEL 要求规范影响矩阵 \(B\) 的谱半径小于 1,此时 \(I-B\) 可逆。

平台功能

模糊 DEMATEL-ISM-MICMAC 融合分析平台提供以下核心功能:

数据输入

  • 支持 Excel(.xlsx, .xls)格式。
  • 每个工作表为一个专家的直接影响矩阵(数值 0~4),第一行和第一列为因素名称,数据区域为方阵。
  • 自动校验矩阵方阵性、对角线是否为 0、数值范围等。

参数设置

  • DEMATEL 规范化方法:行和最大值、列和最大值、行和列和最大值。
  • 去模糊化方法:CFCS、重心法。
  • 阈值 λ 计算方法:均值+标准差、均值、自定义。
  • 自定义阈值:当选择自定义时输入(0~1)。
  • 可达矩阵生成方法:布尔运算迭代、阈值二值化。
  • ISM 分层方法:两种等价选项。
  • 选择分析的工作表:可多选,支持多专家。
  • 专家权重设置:为每个专家分配权重(自动归一化)。
  • 对角线置为 0:强制矩阵对角线为 0。
  • 聚合专家:是否加权聚合(通常选择“是”)。
  • 模糊语义定义:可自定义等级数量及各等级对应的三角模糊数(通过可编辑表格)。

结果展示

  • 模糊 DEMATEL 结果:影响度、被影响度、中心度、原因度、权重、排序、属性分类。
  • ISM 分级结果:各因素的层级、可达集、前因集、交集。
  • MICMAC 驱动力-依赖度结果:驱动力、依赖度、权重、排序、属性分类。
  • 矩阵展示:直接影响矩阵、规范影响矩阵、综合影响矩阵(DEMATEL);邻接矩阵、可达矩阵、骨架矩阵(ISM)。
  • 分层迭代过程:每一层迭代的详细数据。
  • 可视化
    • 模糊 DEMATEL 散点图(中心度-原因度图或影响度-被影响度图)
    • ISM 层次结构图
    • MICMAC 散点图(驱动力-依赖度图) 均支持丰富的绘图参数自定义(颜色、点状/块状、字体大小、图例等),三个图形可独立设置。
  • AI 智能分析:基于 DeepSeek API 自动解读结果,提供关键因素识别、层级结构和驱动力-依赖度分析(每日限 3 次)。
  • 多格式导出:支持 Excel 和 HTML 报告下载。

使用建议

  1. 准备阶段:确定系统因素列表(建议不超过 15 个),设计问卷,明确打分尺度(0~4 分)及对应语义。邀请专家独立填写。

  2. 数据收集:将每位专家的矩阵放入 Excel 的不同工作表,按模板格式填写(第一行第一列为因素名称,数据区域为数值方阵)。

  3. 参数设置

    • 检查并调整模糊语义定义,使其符合实际语义。
    • 选择去模糊化方法(推荐 CFCS)和规范化方法(推荐行和最大值法)。
    • 选择阈值 λ 计算方法(推荐均值+标准差),或根据经验自定义。
    • 选择可达矩阵生成方法(推荐布尔运算迭代)。
    • 若有多位专家,合理设置权重。
  4. 结果解读

    • 模糊 DEMATEL:识别核心原因因素(应优先管理)和核心结果因素(应作为监测指标)。
    • ISM:顶层因素为最终输出或结果,底层因素为根本驱动。
    • MICMAC:驱动因素应优先干预,依赖因素需关注,关联因素敏感且重要,独立因素可单独处理。
    • 综合:将 DEMATEL 的原因度、ISM 的底层位置、MICMAC 的驱动因素三者重合的因素作为最关键的管理杠杆点。
    • 利用 AI 分析获取更深入的解读。
  5. 迭代优化

    • 若结果不符合预期,可调整阈值 λ 或规范化方法,进行敏感性分析。
    • 对比不同专家权重组合,检验稳定性。
    • 可将融合结果作为 ANP、SD 等方法的输入。

平台界面

官方地址:https://superr.online

模糊DEMATEL-ISM-MICMAC融合工具界面

平台界面包含:数据上传区、参数设置区、多工作表预览、模糊语义编辑、DEMATEL/ISM/MICMAC 结果展示、三重可视化图表和 AI 分析模块


参考文献

  1. Lin C J, Wu W W. A causal analytical method for group decision-making under fuzzy environment[J]. Expert Systems with Applications, 2008, 34(1): 205-213.
  2. Opricovic S, Tzeng G H. Defuzzification within a multicriteria decision model[J]. International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 2003, 11(5): 635-652.
  3. Warfield J N. Developing interconnection matrices in structural modeling[J]. IEEE Transactions on Systems, Man, and Cybernetics, 1974, SMC-4(1): 81-87.
  4. Godet M. Scenarios and Strategic Management[M]. Butterworths, 1987.
  5. 周德群,章玲. 集成 DEMATEL-ISM 的复杂系统因素分析[J]. 系统工程理论与实践,2011, 31(3): 481-488.
  6. 基于模糊 DEMATEL-ISM-MICMAC 的供应链风险因素研究[J]. 中国管理科学,2020, 28(5): 156-164.