DEMATEL-AISM
方法概述
DEMATEL-AISM将决策实验室分析法(DEMATEL)与对抗解释结构模型(AISM)有机结合,形成一套完整的系统因素分析框架。该方法同时利用 DEMATEL 量化因素间的影响强度、计算中心度与原因度,以及 AISM 通过对抗性视角(UP 型和 DOWN 型)构建系统的层次结构,识别驱动因素与结果因素。
两种方法的互补优势:
- DEMATEL:利用专家打分量化因素间的直接影响强度,计算中心度与原因度,识别关键因素及其因果属性。
- AISM:基于 DEMATEL 得到的综合影响矩阵,通过阈值 λ 二值化构建邻接矩阵,进而计算可达矩阵、缩点可达矩阵、骨架矩阵,并采用两种对抗性层级划分(UP 型结果优先、DOWN 型原因优先),揭示系统的层次结构及可能的对抗性。
融合流程:
- 收集多位专家对因素间直接影响程度的打分(0~4 分或自定义),加权聚合得到直接影响矩阵。
- 执行 DEMATEL 分析,计算综合影响矩阵、中心度、原因度,绘制因果散点图。
- 根据设定的阈值 λ 将综合影响矩阵二值化,得到邻接矩阵。
- 基于邻接矩阵计算可达矩阵,识别强连通分量(SCC)并缩点,得到缩点可达矩阵。
- 计算骨架矩阵和一般性骨架矩阵。
- 分别进行 UP 型(结果优先,自下而上)和 DOWN 型(原因优先,自上而下)层级划分。
- 将缩点层级映射回原始因素,得到每个因素在两种视角下的层级位置。
- 综合 DEMATEL 和 AISM 的结果,全面识别系统的关键驱动因素、结果因素及层次结构。
该方法适用于需要同时量化影响强度、理清层次结构并识别系统中可能存在的对抗性或不确定性的决策问题。
计算步骤
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\)。
设专家权重为 \(w_k\)(\(\sum_{k=1}^{K} w_k = 1\)),则聚合后的直接影响矩阵 \(A = [a_{ij}]\) 为: \[ a_{ij} = \sum_{k=1}^{K} w_k \cdot x_{ij}^{(k)} \]
2. DEMATEL 分析
2.1 规范化直接影响矩阵
选择规范化方法(行和最大值法、列和最大值法或行和列和最大值法),计算规范化因子 \(s\),得到规范影响矩阵 \(B = A / s\)。
2.2 计算综合影响矩阵
综合影响矩阵 \(T\) 反映了因素间的直接与间接影响总和: \[ T = B + B^2 + B^3 + \cdots = B (I - B)^{-1} \] 其中 \(I\) 为单位矩阵。实际计算中先求 \(I-B\) 的逆矩阵,再左乘 \(B\)。
2.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}\):一般结果
3. DEMATEL 到 AISM 的转换
3.1 确定阈值 \(\lambda\)
平台支持三种阈值计算方法:
- 均值+标准差:\(\lambda = \text{mean}(T) + \text{sd}(T)\)
- 均值:\(\lambda = \text{mean}(T)\)
- 自定义:用户直接输入 \(\lambda \in [0,1]\)
3.2 生成邻接矩阵
将综合影响矩阵二值化: \[ a_{ij}' = \begin{cases} 1, & t_{ij} \ge \lambda,\; i \neq j \\ 0, & \text{otherwise} \end{cases} \]
4. AISM 分析
4.1 计算可达矩阵
基于邻接矩阵 \(A'\),平台支持两种可达矩阵生成方法:
- 布尔运算迭代(Warshall 算法):对 \(A' + I\) 进行传递闭包计算。
- 阈值二值化:直接对 \(T + I\) 按阈值 \(\lambda\) 二值化(此时 \(A'\) 不作为中间步骤)。
4.2 强连通分量(SCC)分析与缩点
采用 Kosaraju 算法识别可达矩阵中的强连通分量(回路)。将每个 SCC 缩为一个节点,得到缩点可达矩阵 \(R_{\text{scc}}\)。缩点后的系统为无环有向图(DAG),便于层级划分。
4.3 UP 型层级划分(结果优先,自下而上)
在缩点可达矩阵 \(R_{\text{scc}}\) 上,计算每个缩点 \(i\) 的可达集 \(R(i)\)、前因集 \(Q(i)\) 和交集 \(C(i)=R(i) \cap Q(i)\)。
UP 型划分的迭代规则:
- 当前层级:找出满足 \(R(i) = C(i)\) 的缩点(结果因素)。
- 将这些缩点分配到当前层级(底层为第 1 层,顶层为最高层),并从系统中移除。
- 在剩余子系统中重复上述过程,直至所有缩点被分配。
- 最终得到自下而上(从驱动到底层结果)的层级序列。箭头方向朝上(从低层指向高层)。
4.4 DOWN 型层级划分(原因优先,自上而下)
DOWN 型划分的迭代规则:
- 当前层级:找出满足 \(Q(i) = C(i)\) 的缩点(原因因素)。
- 将这些缩点分配到当前层级(顶层为第 1 层,底层为最高层),并从系统中移除。
- 重复直至所有缩点被分配。
- 最终得到自上而下(从原因到结果)的层级序列。箭头方向朝下(从高层指向低层)。
4.5 骨架矩阵与一般性骨架矩阵
- 骨架矩阵:在缩点可达矩阵的基础上,删除传递冗余关系,只保留必要的直接关系。
- 一般性骨架矩阵:在骨架矩阵的基础上将对角线置为 0(去除自反关系)。
骨架矩阵用于绘制层次拓扑图,使图形简洁。
4.6 因素层级映射
将缩点的层级映射回原始因素,得到每个原始因素的 UP 型层级和 DOWN 型层级。比较两种层级,若某个因素的两种层级差异较大,则说明该因素在系统结构中具有对抗性或不确定性,需要特别关注。
5. 结果可视化
- DEMATEL 散点图:以中心度为横坐标、原因度为纵坐标绘制(可切换为影响度-被影响度图),用颜色区分因素属性。
- UP 型层级拓扑图:自下而上排列,箭头朝上,突出结果因素(顶层)。
- DOWN 型层级拓扑图:自上而下排列,箭头朝下,突出原因因素(顶层)。
案例分析
案例背景:某企业拟分析影响产品质量的四个因素:员工技能(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相近)。经加权聚合得直接影响矩阵 \(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. AISM 分析(布尔运算迭代)
- 可达矩阵(Warshall 算法):
\[ R = \begin{bmatrix} 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 \\ 0 & 0 & 1 & 0 \\ 1 & 1 & 1 & 1 \end{bmatrix} \]
- 强连通分量:无回路,每个因素单独一个 SCC。
- UP 型层级(结果优先):第 1 层 F3,第 2 层 F1,F2,F4。
- DOWN 型层级(原因优先):第 1 层 F1,F2,F4,第 2 层 F3。
4. 综合解读
- DEMATEL:F1 为核心原因,F2 为一般原因,应优先管理;F3、F4 为结果因素。
- AISM:UP 型顶层(结果因素)为 F3;DOWN 型顶层(原因因素)为 F1,F2,F4。
- 综合:F1、F2、F4 是系统的根本驱动,应作为管理重点;F3 是系统结果,需通过改善驱动因素来提升。两种视角的层级差异反映了系统的确定性结构。
常见问题
Q1: 为什么需要融合 DEMATEL 和 AISM?
A: DEMATEL 提供影响强度与因果属性,但无法给出层次结构;AISM 揭示层次结构和对抗性视角,但输入依赖二元关系(0/1),无法利用强度信息。融合方法利用 DEMATEL 的综合影响矩阵生成更合理的邻接矩阵,再通过 AISM 的对抗性分层,全面揭示系统结构。
Q2: 阈值 λ 如何选择?
A: 平台支持均值、均值+标准差、自定义三种方式。一般推荐“均值+标准差”,能筛选出显著影响关系;也可根据经验自定义。建议进行灵敏度分析,比较不同 λ 下的 AISM 结构稳定性。
Q3: UP 型和 DOWN 型层级划分有何区别?
A:
- UP 型(结果优先):以结果因素为起点,自下而上构建层级,底层为驱动因素,顶层为结果因素,箭头朝上。
- DOWN 型(原因优先):以原因因素为起点,自上而下构建层级,顶层为原因因素,底层为结果因素,箭头朝下。 两种视角互为对偶,通过对比可识别系统结构中的不确定性。
Q4: 强连通分量(SCC)如何处理?
A: SCC 是相互可达的因素集合(回路)。AISM 将每个 SCC 缩为一个节点,因为 SCC 内部的顺序无法区分(它们互为因果)。缩点后的系统是无环的,可以进行层级划分。在结果展示中,SCC 内部的原始因素会以“{F1,F2}”形式列出。
Q5: 支持多专家吗?如何设置权重?
A: 支持。Excel 文件中每个工作表代表一位专家的直接影响矩阵,用户可多选工作表,并为每个专家设置权重(自动归一化)。平台默认等权重。
Q6: 所有矩阵计算中的逆矩阵如果不可逆怎么办?
A: 平台会自动检测 \(I-B\) 是否可逆,若不可逆则使用广义逆(MASS::ginv)进行计算,并给出提示。一般情况下,DEMATEL 要求规范影响矩阵 \(B\) 的谱半径小于 1,此时 \(I-B\) 可逆。
平台功能
DEMATEL-AISM 融合分析平台提供以下核心功能:
数据输入
- 支持 Excel(.xlsx, .xls)格式。
- 每个工作表为一个专家的直接影响矩阵(数值 0~4),第一行和第一列为因素名称,数据区域为方阵。
- 自动校验矩阵方阵性、对角线是否为 0、数值范围等。
参数设置
- DEMATEL 规范化方法:行和最大值、列和最大值、行和列和最大值。
- 阈值 λ 计算方法:均值+标准差、均值、自定义。
- 自定义阈值:当选择自定义时输入(0~1)。
- 可达矩阵生成方法:布尔运算迭代、阈值二值化。
- 选择分析的工作表:可多选,支持多专家。
- 专家权重设置:为每个专家分配权重(自动归一化)。
- 对角线置为 0:强制矩阵对角线为 0。
结果展示
- DEMATEL 因素分析结果:影响度、被影响度、中心度、原因度、权重、排序、属性分类。
- AISM 因素分级结果:各因素的 UP 型层级、DOWN 型层级、可达集、前因集、所属强连通分量。
- 矩阵展示:DEMATEL 直接影响矩阵、规范影响矩阵、综合影响矩阵、验证矩阵;AISM 邻接矩阵、可达矩阵、缩点可达矩阵、骨架矩阵、一般性骨架矩阵。
- 强连通分量:列出所有 SCC 及其包含的原始因素。
- 统计分析:专家数量、因素数量、规范化因子、平均中心度、阈值 λ、可达矩阵生成方法、SCC 数量、UP/DOWN 型总层数等。
- 可视化:
- DEMATEL 散点图(中心度-原因度图或影响度-被影响度图)
- UP 型层级拓扑图(箭头朝上,自下而上)
- DOWN 型层级拓扑图(箭头朝下,自上而下) 均支持丰富的绘图参数自定义(颜色、点状/块状、字体大小、图例等)。
- AI 智能分析:基于 DeepSeek API 自动解读结果,提供关键因素识别、层级结构和对抗性分析(每日限 3 次)。
- 多格式导出:支持 Excel 和 HTML 报告下载。
使用建议
准备阶段:确定系统因素列表(建议不超过 15 个),设计问卷,明确打分尺度(0~4 分)。邀请专家独立填写。
数据收集:将每位专家的矩阵放入 Excel 的不同工作表,按模板格式填写(第一行第一列为因素名称,数据区域为数值方阵)。
参数设置:
- 选择规范化方法(推荐行和最大值法)。
- 选择阈值 λ 计算方法(推荐均值+标准差),或根据经验自定义。
- 选择可达矩阵生成方法(推荐布尔运算迭代)。
- 若有多位专家,合理设置权重。
结果解读:
- DEMATEL:识别核心原因因素(应优先管理)和核心结果因素(应作为监测指标)。
- AISM UP 型:顶层因素为结果因素,底层因素为驱动因素。适用于从结果倒推原因的决策场景。
- AISM DOWN 型:顶层因素为原因因素,底层因素为结果因素。适用于从原因预测结果的决策场景。
- 对比分析:若某个因素在 UP 型和 DOWN 型中的层级差异很大,说明其角色具有对抗性,应作为关键分析对象。
- 强连通分量:包含多个因素的分量表示存在回路,说明这些因素相互依赖、互为因果,需要整体考虑。
- 利用 AI 分析获取更深入的解读和管理建议。
迭代优化:
- 若结果不符合预期,可调整阈值 λ 或规范化方法,进行敏感性分析。
- 对比不同专家权重组合,检验稳定性。
- 可将融合结果作为 ANP、SD 等方法的输入。
平台界面

平台界面包含:数据上传区、参数设置区、多工作表预览、DEMATEL 与 AISM 结果展示、双重可视化图表和 AI 分析模块
参考文献:
- Gabus A, Fontela E. World problems, an invitation to further thought within the framework of DEMATEL[R]. Battelle Geneva Research Centre, 1972.
- Warfield J N. Developing interconnection matrices in structural modeling[J]. IEEE Transactions on Systems, Man, and Cybernetics, 1974, SMC-4(1): 81-87.
- 张强,李从东. 对抗解释结构模型及其在复杂系统分析中的应用[J]. 系统工程理论与实践,2015, 35(8): 2032-2040.
- 周德群,章玲. 集成 DEMATEL-ISM 的复杂系统因素分析[J]. 系统工程理论与实践,2011, 31(3): 481-488.
- 基于 DEMATEL-AISM 的供应链风险因素研究[J]. 中国管理科学,2022, 30(2): 134-142.