PROMETHEE法-I&II
方法概述
PROMETHEE(Preference Ranking Organization METHod for Enrichment Evaluation)是一种基于两两比较的多准则决策分析方法,由Brans和Vincke于1985年提出。该方法通过构建偏好函数,计算方案之间的偏好指数,进而得出正、负偏好流,实现方案的部分排序(PROMETHEE I)或完全排序(PROMETHEE II)。
本工具的主要特点: - 支持六种标准偏好函数:常用准则(Usual)、拟准则(U-shape)、线性偏好(V-shape)、等级准则(Level)、线性无差别区(Linear)、高斯准则(Gaussian)。 - 提供PROMETHEE I(部分排序)和PROMETHEE II(完全排序)两种模式。 - 动态设置偏好函数的阈值参数(q、p、s),灵活适应不同指标的尺度。 - 支持指标方向(效益型/成本型)和权重的自定义。 - 自动处理多工作表批量分析,并提供详细的计算过程展示。 - 可视化偏好流和排名结果。
PROMETHEE法适用于方案数量适中(一般不超过20个)、指标间可独立评估的多准则决策问题,如供应商选择、项目评估、资源配置等。
计算步骤
1. 数据准备
数据文件格式要求: - 第一行为指标名称(列名)。 - 第一列为方案名称(如A1, A2, …)。 - 其余单元格为数值型指标值。 - 支持CSV、Excel(.xlsx/.xls)或TXT(制表符分隔)格式,Excel可含多个工作表。
示例数据(3个方案,4个指标):
| 方案 | 价格(万元) | 油耗(L/100km) | 动力(马力) | 安全性(分) |
|---|---|---|---|---|
| 车A | 18.5 | 7.2 | 150 | 8 |
| 车B | 15.0 | 8.5 | 120 | 7 |
| 车C | 22.0 | 6.0 | 180 | 9 |
2. 偏好函数与参数设置
对于每个指标,用户需选择偏好函数类型并设置相应阈值参数(若需要):
| 偏好函数类型 | 描述 | 参数 |
|---|---|---|
| 常用准则(Usual) | 任何正差异产生完全偏好(1) | 无 |
| 拟准则(U-shape) | 仅当差异 > q 时产生偏好1 | q(无差别阈值) |
| 线性偏好(V-shape) | 差异在0~p之间线性增长 | p(偏好阈值) |
| 等级准则(Level) | 差异在q~p之间产生0.5偏好 | q, p |
| 线性无差别区(Linear) | 差异在q~p之间线性增长 | q, p |
| 高斯准则(Gaussian) | 偏好随差异呈S形增长 | s(高斯阈值) |
同时,需指定每个指标的方向(效益型:越大越好;成本型:越小越好)和权重(权重之和为1,默认等权)。
3. 计算单指标偏好度
对于每个指标 \(j\),定义方案 \(a\) 对方案 \(b\) 的偏好度 \(P_j(a,b)\),取决于两方案在该指标上的差值 \(d_j(a,b) = f_j(a) - f_j(b)\)(已按方向统一,成本型已取负)。根据所选偏好函数计算 \(P_j \in [0,1]\)。
常用偏好函数的数学表达式(设 \(d = f_j(a) - f_j(b)\)):
- 常用准则:\(P(d)=1\) 若 \(d>0\),否则 \(0\)。
- 拟准则:\(P(d)=1\) 若 \(d>q\),否则 \(0\)。
- 线性偏好:\(P(d)=d/p\) 若 \(0<d\le p\),\(1\) 若 \(d>p\),\(0\) 若 \(d\le0\)。
- 等级准则:\(P(d)=0\) 若 \(d\le q\),\(0.5\) 若 \(q<d\le p\),\(1\) 若 \(d>p\)。
- 线性无差别区:\(P(d)=0\) 若 \(d\le q\),\((d-q)/(p-q)\) 若 \(q<d\le p\),\(1\) 若 \(d>p\)。
- 高斯准则:\(P(d)=0\) 若 \(d\le0\),\(1-\exp(-d^2/(2s^2))\) 若 \(d>0\)。
4. 计算全局偏好指数
综合所有指标,得到方案 \(a\) 对方案 \(b\) 的全局偏好指数: \[ \pi(a,b) = \sum_{j=1}^{m} w_j \cdot P_j(a,b) \] 其中 \(w_j\) 为指标权重,\(\sum w_j = 1\)。
5. 计算偏好流
- 正偏好流(流出量):方案 \(a\) 优于其他所有方案的程度 \[ \phi^+(a) = \frac{1}{n-1} \sum_{b \neq a} \pi(a,b) \]
- 负偏好流(流入量):其他方案优于方案 \(a\) 的程度 \[ \phi^-(a) = \frac{1}{n-1} \sum_{b \neq a} \pi(b,a) \]
- 净偏好流:\(\phi(a) = \phi^+(a) - \phi^-(a)\)
6. 方案排序
- PROMETHEE I(部分排序):同时考虑正、负偏好流,可产生偏序关系(可比较、不可比较、偏好、无差异),本工具简化输出净流排序作为参考。
- PROMETHEE II(完全排序):根据净偏好流 \(\phi(a)\) 的大小对方案进行完全排序,值越大越优。
案例分析
案例:某消费者欲从三款汽车(A、B、C)中选择最优车型,考虑四个指标:价格(成本型)、油耗(成本型)、动力(效益型)、安全性(效益型)。数据如下:
| 方案 | 价格(万元) | 油耗(L/100km) | 动力(马力) | 安全性(分) |
|---|---|---|---|---|
| 车A | 18.5 | 7.2 | 150 | 8 |
| 车B | 15.0 | 8.5 | 120 | 7 |
| 车C | 22.0 | 6.0 | 180 | 9 |
设定权重:价格0.4,油耗0.3,动力0.2,安全性0.1。所有指标采用线性偏好函数(V-shape),偏好阈值 \(p\) 分别为:价格5万元,油耗2 L/100km,动力50马力,安全性2分。方向:价格、油耗为成本型(越小越好),动力、安全性为效益型(越大越好)。
计算过程(简略)
数据预处理:成本型取负,再进行标准化(或直接使用原始差值,PROMETHEE对量纲不敏感,但本工具支持标准化)。
计算单指标偏好度(以车A对车B为例):
- 价格:成本型,差值 \(d = (-18.5) - (-15.0) = -3.5\)(车A价格更高),\(d\le0\) → \(P=0\)
- 油耗:成本型,\(d = (-7.2) - (-8.5) = 1.3\)(车A油耗更低),\(d>0\),\(p=2\) → \(P = d/p = 1.3/2=0.65\)
- 动力:效益型,\(150-120=30\),\(p=50\) → \(P=30/50=0.6\)
- 安全性:效益型,\(8-7=1\),\(p=2\) → \(P=1/2=0.5\)
权重加权求和: \(\pi(A,B) = 0.4×0 + 0.3×0.65 + 0.2×0.6 + 0.1×0.5 = 0.195 + 0.12 + 0.05 = 0.365\)
类似计算所有方案对之间的 \(\pi\),得到全局偏好矩阵(假设结果):
| π(a,b) | 车A | 车B | 车C |
|---|---|---|---|
| 车A | 0 | 0.365 | 0.225 |
| 车B | 0.245 | 0 | 0.175 |
| 车C | 0.455 | 0.345 | 0 |
- 计算偏好流(n=3):
- 车A:\(\phi^+ = (0.365+0.225)/2 = 0.295\),\(\phi^- = (0.245+0.455)/2 = 0.350\),\(\phi = -0.055\)
- 车B:\(\phi^+ = (0.245+0.175)/2 = 0.210\),\(\phi^- = (0.365+0.345)/2 = 0.355\),\(\phi = -0.145\)
- 车C:\(\phi^+ = (0.455+0.345)/2 = 0.400\),\(\phi^- = (0.225+0.175)/2 = 0.200\),\(\phi = 0.200\)
- 排序(PROMETHEE II):车C净流最高(0.200),车A次之(-0.055),车B最低(-0.145)。最优方案为车C。
结论:综合考虑价格、油耗、动力和安全性,车C是最优选择。
常见问题
Q1: PROMETHEE I和PROMETHEE II有什么区别?
A: PROMETHEE I提供部分排序,同时展示正、负偏好流,可能产生不可比较的方案对(当一方案正流高但负流也高时)。PROMETHEE II通过净流完全排序,始终给出唯一顺序,但可能丢失部分信息。
Q2: 如何选择偏好函数和参数?
A: 偏好函数反映了决策者对指标差异的敏感度。常用准则最严格,任何微小差异都产生完全偏好;高斯准则最平滑,适合连续变化的数据。参数q、p、s需根据指标实际取值范围调整,通常可取指标标准差的0.1~0.3倍或由专家设定。
Q3: 权重如何确定?
A: 可由专家打分(如AHP)、熵权法或等权。本工具支持手动输入权重,并自动归一化。
Q4: 指标方向如何设置?
A: 效益型指标(越大越好)选“越大越好”;成本型指标(越小越好)选“越小越好”,程序内部会取负值处理。
Q5: 数据是否需要标准化?
A: 本工具提供标准化选项(默认开启),将指标值缩放到[0,1],以避免量纲影响。若关闭,则直接使用原始差值,但需确保各指标具有可比性。
Q6: 可以处理多个工作表吗?
A: 可以。Excel文件中的每个工作表将被视为独立的PROMETHEE分析任务,系统会分别输出结果。
平台功能
数据输入
- 支持CSV、Excel(.xlsx/.xls)、TXT文件格式。
- 自动识别第一列为方案名称,第一行为指标名称。
- 自动检测多个工作表,提供预览和切换。
参数设置
- 偏好函数设置:为每个指标独立选择函数类型(六种)并设置q、p、s参数。
- 指标方向:选择“越大越好”或“越小越好”。
- 权重:可手动输入权重,并一键设为等权重。
- PROMETHEE方法:选择I或II。
- 结果小数位数:控制显示精度(默认4位)。
- 显示中间结果:可选是否显示原始矩阵、处理后矩阵、全局偏好矩阵等。
结果展示
- PROMETHEE最终结果:展示方案的正、负、净偏好流及排序。
- 偏好流分析:提供偏好流数值表及可视化柱状图/散点图。
- 计算过程:展示原始数据、预处理数据、全局偏好矩阵、偏好函数参数表。
- 多工作表切换:通过选项卡分别查看每个工作表的分析结果。
AI智能分析
- 基于DeepSeek API,对分析结果进行专业解读,指出最优方案及其优势,提供决策建议。
- 每日限3次免费调用。
报告下载
- Excel报告:包含汇总表、每个工作表的最终结果、原始数据、处理后数据、全局偏好矩阵及参数表。
- HTML报告:生成自包含的网页报告,便于分享和存档。
使用建议
数据准备:确保方案数量适当(推荐320个),指标数量合理(210个)。指标值应为数值型,无缺失。
偏好函数选择:
- 若指标差异的敏感度较高,使用常用准则或拟准则。
- 若差异呈线性影响,使用线性偏好。
- 若差异在某个区间内无差别,选用等级准则或线性无差别区。
- 若差异对偏好的影响呈S形,使用高斯准则。
参数调优:q和p的设定应基于指标的实际变化范围。可先采用默认值(如q=0.1,p=0.5,s=0.2),再根据结果调整。
权重设定:如果缺乏专家意见,默认等权。若需体现重要性差异,可采用AHP或熵权法辅助确定。
结果解读:
- 优先关注PROMETHEE II的净流排序,它给出综合最优方案。
- 若使用PROMETHEE I,可观察正负流差异,分析方案的优劣势。
- 检查全局偏好矩阵,可发现方案间的相对强弱关系。
敏感性分析:可尝试改变权重或偏好函数参数,观察排序稳定性。本工具支持快速调整参数重新计算。
平台界面

平台界面包含:数据上传区、偏好函数参数设置区、权重设置区、多工作表预览、分析结果展示和AI分析模块
参考文献:
- Brans, J. P., & Vincke, P. (1985). Note—A Preference Ranking Organisation Method. Management Science, 31(6), 647-656.
- Brans, J. P., & Mareschal, B. (2005). Promethee Methods. In Multiple Criteria Decision Analysis: State of the Art Surveys (pp. 163-186). Springer.
- 郭亚军. 综合评价理论、方法及应用[M]. 科学出版社, 2007.