CRADIS法
方法概述
CRADIS(Compromise Ranking of Alternatives from Distance to Ideal Solution)是一种多准则决策分析方法,通过计算各方案与全局最优点和最劣点的曼哈顿距离,综合得到效用值并排序,兼顾了TOPSIS和VIKOR的优点。该方法避免了传统TOPSIS中欧氏距离可能导致的区分度不足问题,同时保持了VIKOR对妥协解的敏感性。
CRADIS法的核心思想是:
- 将原始决策矩阵正向化(正向指标越大越好,负向指标越小越好),并归一化到[0,1]区间。
- 使用权重构造加权矩阵。
- 确定全局最优点(加权矩阵中的最大值)和全局最劣点(加权矩阵中的最小值)。
- 计算每个方案与全局最优点和最劣点的曼哈顿距离(S⁺ 和 S⁻)。
- 根据参考距离 S₀⁺(最小 S⁺)和 S₀⁻(最大 S⁻)计算效用值 U⁺ 和 U⁻。
- 通过综合指标 Q = α·U⁺ + (1-α)·U⁻ 对方案排序,α 为平衡系数(默认0.5)。
- 提供详细的中间结果(归一化矩阵、加权矩阵、距离、效用)和可视化图表。
该方法适用于存在多个相互冲突的评价指标、需要从有限方案中选出最优或进行排序的决策问题,如供应商选择、项目评估、技术方案比选等。
计算步骤
1. 数据准备与验证
输入数据需为Excel文件,每个工作表代表一个独立的决策矩阵。数据格式要求:
- 第1行:指标名称(字符串)。
- 第2行:指标方向(“正向”或“负向”)。
- 第3行:指标权重(正数,可未归一化,程序自动归一化)。
- 第4行及以下:第一列为方案名称,其余列为各方案在各指标下的数值。
程序自动验证:
- 行数≥4,列数≥2。
- 指标名称、方向、权重完整且合法。
- 方案名称不重复。
- 数值矩阵为数值型,无缺失。
2. 权重归一化(可选)
若选择自动归一化权重,则计算: [ w_j’ = ] 否则直接使用用户提供的权重。
3. 正向化归一化矩阵 Y
对每个指标 j,根据方向进行正向化处理: - 正向指标:( Y_{ij} = ) - 负向指标:( Y_{ij} = )
Y 的所有元素位于 (0,1] 区间。
4. 加权矩阵 H
[ H_{ij} = Y_{ij} w_j’ ]
5. 全局最优点与最劣点
[ h^+ = {i,j} H{ij}, h^- = {i,j} H{ij} ]
6. 曼哈顿距离
每个方案 i 与最优点和最劣点的曼哈顿距离: [ S_i^+ = {j=1}^{n} (h^+ - H{ij}) ] [ S_i^- = {j=1}^{n} (H{ij} - h^-) ]
7. 参考点
[ S_0^+ = _i S_i^+, S_0^- = _i S_i^- ]
8. 效用值
[ U_i^+ = , U_i^- = ]
9. 综合指标 Q 与排序
[ Q_i = U_i^+ + (1-) U_i^- ] 其中 α ∈ [0,1] 由用户设定(默认0.5)。Q 值越大表示方案越优。按 Q 降序排列得到最终排名。
案例分析
案例背景:某公司拟从三个供应商(A、B、C)中选择最优合作伙伴,评价指标包括:价格(负向)、质量(正向)、交货时间(负向)、服务(正向)。数据如下:
| 方案 | 价格(万元) | 质量(分) | 交货时间(天) | 服务(分) |
|---|---|---|---|---|
| 方向 | 负向 | 正向 | 负向 | 正向 |
| 权重 | 0.4 | 0.3 | 0.2 | 0.1 |
| A | 120 | 85 | 15 | 90 |
| B | 100 | 90 | 20 | 80 |
| C | 110 | 88 | 18 | 95 |
计算过程
1. 权重归一化(已归一化,权重和=1)
w = [0.4, 0.3, 0.2, 0.1]
2. 正向化归一化矩阵 Y
- 价格(负向):min=100,Y_A=100/120≈0.8333,Y_B=100/100=1,Y_C=100/110≈0.9091
- 质量(正向):max=90,Y_A=85/90≈0.9444,Y_B=90/90=1,Y_C=88/90≈0.9778
- 交货时间(负向):min=15,Y_A=15/15=1,Y_B=15/20=0.75,Y_C=15/18≈0.8333
- 服务(正向):max=95,Y_A=90/95≈0.9474,Y_B=80/95≈0.8421,Y_C=95/95=1
Y 矩阵:
| 方案 | 价格 | 质量 | 交货时间 | 服务 |
|---|---|---|---|---|
| A | 0.8333 | 0.9444 | 1.0000 | 0.9474 |
| B | 1.0000 | 1.0000 | 0.7500 | 0.8421 |
| C | 0.9091 | 0.9778 | 0.8333 | 1.0000 |
3. 加权矩阵 H = Y × w
| 方案 | 价格(0.4) | 质量(0.3) | 交货(0.2) | 服务(0.1) |
|---|---|---|---|---|
| A | 0.3333 | 0.2833 | 0.2000 | 0.0947 |
| B | 0.4000 | 0.3000 | 0.1500 | 0.0842 |
| C | 0.3636 | 0.2933 | 0.1667 | 0.1000 |
4. 全局最优点 h⁺ 和最劣点 h⁻
h⁺ = max(H) = 0.4000 (B,价格)
h⁻ = min(H) = 0.0842 (B,服务)
5. 曼哈顿距离
S⁺ = sum(h⁺ - H_{ij}) 对每个方案:
- A: (0.4-0.3333)+(0.4-0.2833)+(0.4-0.2)+(0.4-0.0947) = 0.0667+0.1167+0.2+0.3053 = 0.6887
- B: (0.4-0.4)+(0.4-0.3)+(0.4-0.15)+(0.4-0.0842) = 0+0.1+0.25+0.3158 = 0.6658
- C: (0.4-0.3636)+(0.4-0.2933)+(0.4-0.1667)+(0.4-0.1) = 0.0364+0.1067+0.2333+0.3 = 0.6764
S⁻ = sum(H_{ij} - h⁻):
- A: (0.3333-0.0842)+(0.2833-0.0842)+(0.2-0.0842)+(0.0947-0.0842) = 0.2491+0.1991+0.1158+0.0105 = 0.5745
- B: (0.4-0.0842)+(0.3-0.0842)+(0.15-0.0842)+(0.0842-0.0842) = 0.3158+0.2158+0.0658+0 = 0.5974
- C: (0.3636-0.0842)+(0.2933-0.0842)+(0.1667-0.0842)+(0.1-0.0842) = 0.2794+0.2091+0.0825+0.0158 = 0.5868
6. 参考点
S₀⁺ = min(S⁺) = 0.6658 (B)
S₀⁻ = max(S⁻) = 0.5974 (B)
7. 效用值
U⁺ = S₀⁺ / S⁺:
- A: 0.6658/0.6887 ≈ 0.9667
- B: 0.6658/0.6658 = 1.0000
- C: 0.6658/0.6764 ≈ 0.9844
U⁻ = S⁻ / S₀⁻:
- A: 0.5745/0.5974 ≈ 0.9617
- B: 0.5974/0.5974 = 1.0000
- C: 0.5868/0.5974 ≈ 0.9823
8. 综合指标 Q (α=0.5)
Q = 0.5U⁺ + 0.5U⁻:
- A: 0.50.9667+0.50.9617 = 0.9642
- B: 0.51+0.51 = 1.0000
- C: 0.50.9844+0.50.9823 = 0.9834
排序:B (1) > C (0.9834) > A (0.9642)
9. 结果解读
供应商 B 为最优选择,其综合得分最高,主要得益于价格和质量指标的突出表现。C 次之,A 最差。决策者可依据此结果结合其他定性因素进行最终决策。
常见问题
Q1: CRADIS 与 TOPSIS、VIKOR 有何区别?
A: CRADIS 使用曼哈顿距离而非欧氏距离,对异常值不敏感;同时它通过参考距离 S₀⁺ 和 S₀⁻ 计算效用,避免了 TOPSIS 中相对贴近度可能出现的分母为零问题。与 VIKOR 相比,CRADIS 不需要设置群体效用和个别遗憾的权重,参数 α 仅用于平衡 U⁺ 和 U⁻,解释更为直观。
Q2: 如何选择 α 系数?
A: α 表示决策者偏好 U⁺(与最优点的接近程度)的相对重要性。α=0.5 表示同等重视 U⁺ 和 U⁻;α>0.5 更强调与最优点的接近;α<0.5 更强调远离最劣点。建议进行敏感性分析,观察不同 α 下的排序稳定性。
Q3: 为什么归一化使用最大值或最小值除法,而不是向量归一化?
A: CRADIS 采用线性最大化/最小化归一化,保证结果在 (0,1] 区间,且具有清晰的物理意义(各指标已达到最佳值的比例)。这种归一化与曼哈顿距离配合更为自然。
Q4: 支持多工作表的意义是什么?
A: 一个 Excel 文件可包含多个决策矩阵(例如不同年份的数据、不同专家组的判断、不同场景的备选方案),程序会逐一分析并生成对比结果,便于横向比较。
Q5: 权重需要归一化吗?
A: 程序默认自动归一化,确保权重和为 1。若用户希望保留原始权重比例(例如权重本身具有绝对意义),可取消勾选“自动归一化权重”,但需保证权重均为正数。
Q6: 如果出现 S⁺=0 或 S⁻=0 怎么办?
A: S⁺=0 表示该方案在所有指标上均达到全局最优(即 H 矩阵每列均为最大值),此时 U⁺ 定义中的分母为零。CRADIS 通过取参考点 S₀⁺=min(S⁺) 并计算 U⁺=S₀⁺/S⁺ 来处理,若 S⁺=0 则 U⁺ 无穷大,程序会报错。实际数据中,由于权重和指标值不同,极少出现完美方案。若出现,可检查数据是否合理或调整小数位数。
平台功能
CRADIS 法分析平台提供以下核心功能:
数据输入
- 支持 Excel(.xlsx, .xls)格式。
- 每个工作表为一个决策矩阵,按指定格式组织(第一行指标名,第二行方向,第三行权重,第四行起为方案数据)。
- 自动校验数据完整性、方向合法性、数值有效性等。
参数设置
- Alpha 系数 (α):0~1,步长0.05,默认0.5。
- 结果保留小数位:1~10,默认5位。
- 自动归一化权重:勾选后自动使权重和为1,否则使用原始权重。
结果展示
- 排序结果:各方案的 Q 值及排名。
- 归一化矩阵 Y:正向化后的归一化矩阵。
- 加权矩阵 H:加权后的矩阵。
- 距离与效用:S⁺、S⁻、U⁺、U⁻ 值。
- 可视化:
- 综合得分条形图(Q 值排序)
- 效用对比图(U⁺ 和 U⁻ 并排柱状图)
- 计算过程:原始矩阵、权重列表、全局最优点/最劣点、参考点等。
- AI 智能分析:基于 DeepSeek API 自动解读最优方案及其优势,分析权重影响,提供决策建议(每日限 3 次)。
- 多格式导出:支持 Excel 和 HTML 报告下载,包含所有工作表的完整结果。
多工作表支持
- 自动检测所有工作表,并为每个工作表独立执行 CRADIS 分析。
- 结果以选项卡形式展示,便于切换。
- 汇总报告包含各工作表的最优方案对比。
使用建议
- 数据准备:
- 按照模板格式准备 Excel 文件,确保方向填写“正向”或“负向”,权重为正数。
- 方案名称应简洁明了,避免重复。
- 数值矩阵中避免空值或文本,若有缺失需提前处理。
- 参数调试:
- 初次分析建议使用默认 α=0.5,观察排序结果。
- 若排序对 α 敏感,可尝试多个 α 值,了解方案的稳定性。
- 小数位一般保持5位即可,如需精确比较可适当增加。
- 结果解读:
- 重点关注 Q 值最高的方案,但也要检查 U⁺ 和 U⁻ 是否均衡。
- 若某方案 U⁺ 很高但 U⁻ 很低,说明其接近最优点但远离最劣点,可能是“冒险型”选择。
- 若某方案 U⁺ 和 U⁻ 都中等,则为稳健型。
- 利用 AI 分析获得更专业的解读和管理建议。
- 报告导出:
- Excel 报告包含汇总表及每个工作表的排序、归一化矩阵、加权矩阵、原始矩阵、权重表。
- HTML 报告便于在浏览器中查看和分享。
- 故障排除:
- 若上传文件后无预览,检查文件格式是否正确,大小是否超过5MB。
- 若分析报错,查看错误提示(如数据验证失败),修正 Excel 后重新上传。
- 若 AI 分析失败,检查是否配置了有效的 DeepSeek API 密钥(环境变量 DEEPSEEK_API_KEY)。
平台界面

平台界面包含:数据上传区、参数设置区、工作表预览、分析结果选项卡和AI分析模块
参考文献:
- Puška A, Stojanović I, Maksimović A. A new hybrid MCDM model: CRADIS[J]. Decision Making: Applications in Management and Engineering, 2021, 4(2): 176-193.
- Chatterjee P, Stević Ž. A two-phase fuzzy AHP-fuzzy CRADIS model for selecting sustainable suppliers[J]. Sustainability, 2022, 14(5): 2965.
- 基于 CRADIS 的绿色供应商选择研究[J]. 运筹与管理, 2023, 32(4): 98-104.