MACBETH法
方法概述
MACBETH(Measuring Attractiveness by a Categorical Based Evaluation Technique)是一种基于语义类别判断的多准则决策分析方法,由 Bana e Costa 和 Vansnick 于 1994 年提出。该方法通过使用有限的语义类别(无差异、非常弱差异、弱差异、中等差异、强差异、非常强差异、极端差异)来表达决策者对各方案(或准则)之间偏好差异的程度,然后通过线性规划求解各方案的得分和准则权重,从而进行排序。
MACBETH 法的核心思想是:
- 对于每个准则,决策者将各方案两两比较,用 0~6 的语义类别表示差异程度(0=无差异,6=极端差异)。
- 构建成对比较矩阵,通过线性规划求解各方案在该准则下的得分(0~100 分)。
- 类似地,对准则的重要性进行两两比较,得到准则权重。
- 综合各准则得分与权重,计算每个方案的综合得分,并排序。
- 提供一致性检验指标,评估判断的可靠性。
该方法不需要精确的数值评分,仅需定性判断,易于操作,且能够处理主观性强、信息不完全的决策问题。
计算步骤
1. 构建原始数据矩阵
设有 \(n\) 个方案,\(m\) 个准则。原始数据矩阵为:
\[ X = \begin{bmatrix} x_{11} & x_{12} & \cdots & x_{1m} \\ x_{21} & x_{22} & \cdots & x_{2m} \\ \vdots & \vdots & \ddots & \vdots \\ x_{n1} & x_{n2} & \cdots & x_{nm} \end{bmatrix} \]
其中 \(x_{ij}\) 为方案 \(i\) 在准则 \(j\) 下的原始得分(可以是任何量纲,但需能反映优劣顺序)。
数据格式要求:
- 第一行为准则名称。
- 第一列为方案名称。
- 数据区域为数值型原始得分。
2. 准则重要性判断矩阵
决策者需对 \(m\) 个准则进行两两比较,用语义类别表示准则 \(i\) 相对于准则 \(j\) 的重要性差异程度。语义类别与数值对应关系如下:
| 语义类别 | 数值 | 说明 |
|---|---|---|
| 无差异 | 0 | 两者同等重要 |
| 非常弱差异 | 1 | 一个略重要 |
| 弱差异 | 2 | 明显重要 |
| 中等差异 | 3 | 相当重要 |
| 强差异 | 4 | 强烈重要 |
| 非常强差异 | 5 | 非常重要 |
| 极端差异 | 6 | 绝对重要 |
构建 \(m \times m\) 的准则判断矩阵 \(C\),其中 \(c_{ij}\) 表示准则 \(i\) 相对于准则 \(j\) 的重要性差异(\(c_{ji} = -c_{ij}\)),且 \(c_{ii}=0\)。
3. 对各准则下的方案进行成对比较
对于每个准则 \(j\),决策者根据方案在该准则下的原始得分,判断方案间的优劣差异程度。同样使用 0~6 的语义类别。对于方案 \(p\) 和 \(q\),若 \(x_{pj} > x_{qj}\),则 \(d_{pq}^{(j)} = k\)(\(k\) 为语义数值),\(d_{qp}^{(j)} = -k\);若相等则为 0。
由此得到每个准则下的 \(n \times n\) 成对比较矩阵 \(D^{(j)}\)。
4. 线性规划求解得分
对于每个准则 \(j\),求解以下线性规划,得到各方案的得分 \(s_i^{(j)}\)(\(i=1,\dots,n\)):
\[ \begin{aligned} \min \quad & \sum_{i=1}^{n} s_i^{(j)} \\ \text{s.t.} \quad & s_p^{(j)} - s_q^{(j)} \ge d_{pq}^{(j)}, \quad \forall p,q \text{ 且 } d_{pq}^{(j)} > 0 \\ & s_{\max}^{(j)} = 100, \quad s_{\min}^{(j)} = 0 \end{aligned} \]
其中 \(s_{\max}^{(j)}\) 和 \(s_{\min}^{(j)}\) 分别对应方案中原始得分最高和最低者的得分。若存在矛盾的不等式,线性规划可能无解,此时需调整判断。
5. 准则权重求解
类似地,对准则判断矩阵 \(C\) 求解线性规划,得到准则权重 \(w_j\)(\(j=1,\dots,m\)),满足 \(0 \le w_j \le 1\),\(\sum w_j = 1\),且 \(w_p - w_q \ge c_{pq}\)(对 \(c_{pq}>0\))。
6. 计算综合得分与排序
方案 \(i\) 的综合得分为: \[ S_i = \sum_{j=1}^{m} w_j \cdot s_i^{(j)} \]
可选择将综合得分归一化到 0~100 区间。按 \(S_i\) 从大到小排序,得分越高方案越优。
7. 一致性检验
对于每个准则和准则重要性判断,可计算一致性指标: \[ \text{CI} = 1 - \frac{\sum |\text{实际差异} - \text{要求差异}|}{\text{比较次数} \times 6} \] CI 取值范围 [0,1],越接近 1 表示判断越一致。平台会输出各准则的一致性指标。
案例分析
案例背景:某企业拟从三个方案(A、B、C)中选择最优方案,考虑两个准则:成本(越小越好)和性能(越大越好)。原始数据如下:
| 方案 | 成本(万元) | 性能(分) |
|---|---|---|
| A | 100 | 85 |
| B | 120 | 90 |
| C | 80 | 70 |
准则重要性:成本与性能同等重要(语义值 0)。
计算过程
1. 准则重要性矩阵
\(C = \begin{bmatrix}0 & 0 \\ 0 & 0\end{bmatrix}\),权重相等 \(w_1 = w_2 = 0.5\)。
2. 成本准则下的成对比较(成本越小越好)
原始值:A=100,B=120,C=80。按数值大小判断优劣:C 最优,A 次之,B 最差。
两两差异(语义赋值):
- C vs A:成本低 20,设为“中等差异”(3)→ \(d_{CA}=3\),\(d_{AC}=-3\)
- C vs B:成本低 40,设为“强差异”(4)→ \(d_{CB}=4\),\(d_{BC}=-4\)
- A vs B:成本低 20,设为“中等差异”(3)→ \(d_{AB}=3\),\(d_{BA}=-3\)
求解线性规划:设 C 得分 100,B 得分 0,则 A 应满足 \(s_A - s_B \ge 3\),\(s_C - s_A \ge 3\),\(s_C - s_B \ge 4\)。取 \(s_C=100\),\(s_B=0\),则 \(s_A\) 最小为 3,可取 3。得分:C=100,A=3,B=0。
3. 性能准则下的成对比较(越大越好)
原始值:A=85,B=90,C=70。优劣:B 最优,A 次之,C 最差。
两两差异(语义赋值):
- B vs A:性能高 5,设为“弱差异”(2)→ \(d_{BA}=2\),\(d_{AB}=-2\)
- B vs C:性能高 20,设为“中等差异”(3)→ \(d_{BC}=3\),\(d_{CB}=-3\)
- A vs C:性能高 15,设为“弱差异”(2)→ \(d_{AC}=2\),\(d_{CA}=-2\)
求解:设 B=100,C=0,则 A 满足 \(s_A - s_C \ge 2\),\(s_B - s_A \ge 2\),\(s_B - s_C \ge 3\)。取 A=2。得分:B=100,A=2,C=0。
4. 综合得分
\(S_A = 0.5×3 + 0.5×2 = 2.5\) \(S_B = 0.5×0 + 0.5×100 = 50\) \(S_C = 0.5×100 + 0.5×0 = 50\)
归一化到 0~100:\(S_A=2.5\),\(S_B=50\),\(S_C=50\)。排序:B 和 C 并列最优,A 最差。
结论:方案 B 和 C 综合表现最好,A 最差。
常见问题
Q1: MACBETH 与 AHP 有何区别?
A: AHP 使用 1~9 的比率尺度,要求判断具有传递性;MACBETH 使用语义类别(0~6),通过线性规划求解得分,允许一定程度的不一致性,且不需要精确的比率判断。
Q2: 语义类别如何选择?
A: 根据实际差异程度定性判断。0 表示无差异,1~6 表示差异逐渐增大。一般建议差异不超过 6(极端差异)。若原始数据差距很大,可适当压缩或标准化后判断。
Q3: 线性规划无解怎么办?
A: 表示判断矩阵存在矛盾(如 A>B, B>C, C>A)。平台会使用备选方法(如基于排名赋分)近似求解。用户应检查判断是否合理,调整矛盾项。
Q4: 准则重要性矩阵如何填写?
A: 界面中只填写上三角单元格(i<j),系统自动填充下三角为相反数。对角线固定为 0。填写时根据准则的相对重要性选择语义类别。
Q5: 支持多工作表吗?
A: 支持。Excel 文件中每个工作表可存放一组方案数据,系统会分别分析并输出结果。
Q6: 原始得分是否需要标准化?
A: 原始得分仅用于判断方案间的优劣顺序和差异程度,不需要标准化。用户可根据实际数值判断语义类别。平台也提供“标准化得分”选项,将最终综合得分映射到 0~100 区间。
平台功能
MACBETH 法分析平台提供以下核心功能:
数据输入
- 支持 CSV、Excel、TXT 多种格式。
- Excel 文件支持多工作表,自动识别工作表名称。
- 数据格式要求:第一行为准则名称,第一列为方案名称,数据区域为数值型原始得分。
参数设置
- 小数位数:控制结果精度(默认 4 位)。
- 标准化得分:是否将综合得分映射到 0~100 区间。
- 显示一致性检验:是否展示各准则的一致性指标。
- 准则重要性矩阵:用户需填写准则间的成对比较(上三角),系统自动生成完整矩阵。
结果展示
- 综合结果:各方案的综合得分及排序。
- 准则权重:各准则的权重。
- 各准则得分:每个方案在每个准则下的得分。
- 判断矩阵:准则重要性矩阵、原始数据矩阵。
- 一致性检验:各准则判断的一致性指标(0~1,越大越好)。
- 可视化:方案综合得分条形图、准则权重分布图。
- AI 智能分析:基于 DeepSeek API 自动解读结果,提供决策建议(每日限 3 次)。
- 多格式导出:支持 Excel 和 HTML 报告下载。
工作表管理
- 多工作表自动识别,支持批量分析。
- 实时显示每个工作表的预览数据。
- 支持对比不同工作表的分析结果。
使用建议
准备阶段:明确评价方案和准则,收集各方案的原始得分数据。确定准则间的相对重要性。
数据收集:使用平台提供的模板文件填写原始数据(方案-准则矩阵)。确保数据无缺失值。
参数设置:
- 在准则重要性矩阵中,按语义类别填写两两比较(上三角)。建议从最重要的准则开始,逐步对比。
- 平台会自动根据原始得分生成方案间的差异判断,用户无需手动填写(但可修改)。若原始得分不能反映真实偏好,可手动调整差异值。
- 选择是否标准化得分和显示一致性检验。
结果解读:
- 综合得分最高的方案为最优。
- 准则权重反映各准则的重要性,可用于敏感性分析。
- 各准则得分可看出方案在不同准则下的优劣。
- 一致性指标若低于 0.7,建议检查判断是否合理。
- 利用 AI 分析获取专业解读。
迭代优化:
- 若结果与预期不符,可调整准则重要性判断或方案间差异判断。
- 对比不同工作表的结果,分析不同数据集下的决策稳定性。
- 可结合其他多准则决策方法(如 AHP、TOPSIS)进行验证。
平台界面

平台界面包含:数据上传区、参数设置区、多工作表预览、分析结果展示和AI分析模块
参考文献:
- Bana e Costa C A, Vansnick J C. MACBETH — An interactive path for the construction of cardinal value functions[J]. International Transactions in Operational Research, 1994, 1(4): 489-500.
- 基于 MACBETH 的多准则决策方法研究[J]. 系统工程理论与实践,2007, 27(5): 101-107.
- MACBETH 法在供应商选择中的应用[J]. 工业工程与管理,2010, 15(4): 112-116.