EXPROM法
方法概述
EXPROM(Extended PROMETHEE,扩展偏好排序法)是一种基于偏好关系的多准则决策方法,是PROMETHEE方法的扩展。它通过构建偏好函数来刻画方案之间在每个指标上的优劣程度,进而计算综合偏好指数,并最终通过正流、负流和净流对方案进行完整排序。
EXPROM法的核心思想是: - 对原始数据进行归一化,消除量纲影响。 - 根据决策者选择的偏好函数类型,计算任意两个方案在每个指标上的偏好程度。 - 结合指标权重,计算综合偏好指数,构建综合偏好矩阵。 - 计算每个方案的正流(优于其他方案的程度)、负流(劣于其他方案的程度)和净流。 - 根据净流值对方案进行排序,净流越大方案越优。
该方法充分考虑了指标间的偏好差异,允许决策者通过选择不同的偏好函数和阈值来反映其对指标差异的敏感程度,适用于需要精细刻画偏好结构的多准则决策问题。
计算步骤
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} \]
2. 数据归一化
为消除量纲影响,需对原始数据进行归一化。平台支持多种归一化方法,用户可根据需要选择:
(1)线性归一化(Linear)
- 正向指标(越大越好): \[ z_{ij} = \frac{x_{ij} - \min(x_j)}{\max(x_j) - \min(x_j)} \]
- 负向指标(越小越好): \[ z_{ij} = \frac{\max(x_j) - x_{ij}}{\max(x_j) - \min(x_j)} \]
(2)向量归一化(Vector)
\[ z_{ij} = \frac{x_{ij}}{\sqrt{\sum_{i=1}^{n} x_{ij}^2}} \]
(3)最大值归一化(Max)
- 正向指标: \[ z_{ij} = \frac{x_{ij}}{\max(x_j)} \]
- 负向指标: \[ z_{ij} = \frac{\min(x_j)}{x_{ij}} \]
注意:负向指标经上述转换后,均转化为正向意义(值越大越好)。
3. 计算偏好函数
对于每对方案 \((a, b)\) 和每个指标 \(j\),计算方案 \(a\) 相对于方案 \(b\) 的差异 \(d_j(a,b) = z_{aj} - z_{bj}\)。根据选定的偏好函数类型,将差异转化为偏好值 \(P_j(a,b) \in [0,1]\)。平台支持以下四种偏好函数:
(1)线性偏好函数(Linear)
需设置无差异阈值 \(q\) 和严格偏好阈值 \(p\)(\(0 \leq q < p\)): \[ P(d) = \begin{cases} 0, & d \leq q \\ \frac{d - q}{p - q}, & q < d < p \\ 1, & d \geq p \end{cases} \]
(2)水平偏好函数(Level)
需设置无差异阈值 \(q\) 和严格偏好阈值 \(p\)(\(0 \leq q < p\)): \[ P(d) = \begin{cases} 0, & d \leq q \\ 0.5, & q < d \leq p \\ 1, & d > p \end{cases} \]
(3)高斯偏好函数(Gaussian)
需设置参数 \(\sigma\)(通常取指标的标准差): \[ P(d) = \begin{cases} 0, & d \leq 0 \\ 1 - e^{-d^2/(2\sigma^2)}, & d > 0 \end{cases} \]
(4)梯形偏好函数(Trapezoidal)
需设置无差异阈值 \(q\) 和严格偏好阈值 \(p\)(\(0 \leq q < p\)): \[ P(d) = \begin{cases} 0, & d \leq q \\ \frac{d - q}{p - q}, & q < d < p \\ 1, & d \geq p \end{cases} \]
注意:当 \(d \leq 0\) 时,\(P(d)=0\),即只考虑方案 \(a\) 优于方案 \(b\) 的程度。
4. 计算综合偏好指数
对每个指标赋予权重 \(w_j\)(权重之和为1),则方案 \(a\) 相对于方案 \(b\) 的综合偏好指数为: \[ \pi(a,b) = \sum_{j=1}^{m} w_j \cdot P_j(a,b) \] \(\pi(a,b)\) 表示方案 \(a\) 优于方案 \(b\) 的总体程度。
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. 方案排序
根据净流 \(\phi(a)\) 从大到小排序,\(\phi(a)\) 越大表示方案越优。
案例分析
案例背景:某企业拟从四个供应商(A、B、C、D)中选择合作伙伴,评价指标包括:产品质量(正向)、价格(负向)、交货准时率(正向)。原始数据如下:
| 供应商 | 产品质量 | 价格 | 交货准时率 |
|---|---|---|---|
| A | 85 | 200 | 0.95 |
| B | 90 | 180 | 0.90 |
| C | 75 | 210 | 0.85 |
| D | 80 | 190 | 0.92 |
设三个指标权重相等,均为 \(1/3\)。采用线性归一化和线性偏好函数,设置无差异阈值 \(q=0.1\),严格偏好阈值 \(p=0.3\)。
计算过程
1. 数据归一化(线性归一化)
- 产品质量(正向):\(\max=90,\min=75\)
- A: \((85-75)/(90-75)=10/15=0.6667\)
- B: \((90-75)/15=1.0000\)
- C: \((75-75)/15=0.0000\)
- D: \((80-75)/15=0.3333\)
- 价格(负向):\(\max=210,\min=180\)
- A: \((210-200)/(210-180)=10/30=0.3333\)
- B: \((210-180)/30=1.0000\)
- C: \((210-210)/30=0.0000\)
- D: \((210-190)/30=0.6667\)
- 交货准时率(正向):\(\max=0.95,\min=0.85\)
- A: \((0.95-0.85)/0.10=1.0000\)
- B: \((0.90-0.85)/0.10=0.5000\)
- C: \((0.85-0.85)/0.10=0.0000\)
- D: \((0.92-0.85)/0.10=0.7000\)
归一化矩阵 \(Z\):
\[ Z = \begin{bmatrix} 0.6667 & 0.3333 & 1.0000 \\ 1.0000 & 1.0000 & 0.5000 \\ 0.0000 & 0.0000 & 0.0000 \\ 0.3333 & 0.6667 & 0.7000 \end{bmatrix} \]
2. 计算每对方案的差异和偏好值
以指标1(产品质量)为例,计算方案A与B的差异:\(d_1(A,B) = 0.6667 - 1.0000 = -0.3333 \leq 0\),故 \(P_1(A,B)=0\);方案B与A的差异:\(d_1(B,A) = 1.0000 - 0.6667 = 0.3333\),由于 \(0.3333 > p=0.3\),故 \(P_1(B,A)=1\)。
类似地,可计算所有方案对在每个指标上的偏好值,再结合权重得到综合偏好指数 \(\pi(a,b)\)。由于计算量较大,此处仅列出最终综合偏好矩阵(行列对应方案A~D,\(\pi(a,b)\) 表示行方案优于列方案的程度):
\[ \Pi = \begin{bmatrix} 0 & 0.1111 & 0.3333 & 0.1111 \\ 0.3333 & 0 & 0.3333 & 0.2222 \\ 0 & 0 & 0 & 0 \\ 0.2222 & 0.1111 & 0.3333 & 0 \end{bmatrix} \]
(注:详细计算过程略,平台会自动完成。)
3. 计算正流、负流和净流
- 方案A:
- 正流:\((0.1111+0.3333+0.1111)/3 = 0.5555/3 = 0.1852\)
- 负流:\((0.3333+0+0.2222)/3 = 0.5555/3 = 0.1852\)
- 净流:\(0.1852 - 0.1852 = 0.0000\)
- 方案B:
- 正流:\((0.3333+0.3333+0.2222)/3 = 0.8888/3 = 0.2963\)
- 负流:\((0.1111+0+0.1111)/3 = 0.2222/3 = 0.0741\)
- 净流:\(0.2963 - 0.0741 = 0.2222\)
- 方案C:
- 正流:\((0+0+0)/3 = 0\)
- 负流:\((0.3333+0.3333+0.3333)/3 = 1.0/3 = 0.3333\)
- 净流:\(0 - 0.3333 = -0.3333\)
- 方案D:
- 正流:\((0.2222+0.1111+0.3333)/3 = 0.6666/3 = 0.2222\)
- 负流:\((0.1111+0.2222+0)/3 = 0.3333/3 = 0.1111\)
- 净流:\(0.2222 - 0.1111 = 0.1111\)
4. 排序
净流:B(0.2222) > D(0.1111) > A(0.0000) > C(-0.3333),因此供应商B最优,供应商C最差。
结论:供应商B的综合表现最好,尤其在价格(负向指标)上优势明显;供应商C在所有指标上均处于劣势,排序最差。
常见问题
Q1: EXPROM法与PROMETHEE法有何关系?
A: EXPROM法是PROMETHEE(偏好排序组织方法)的扩展或变体,核心思想相似,均基于偏好函数和流进行排序。不同之处可能在于归一化方式、偏好函数的具体形式或流的计算方法。本平台实现的EXPROM法包含多种偏好函数和归一化方法,具有较好的灵活性。
Q2: 如何选择偏好函数和阈值?
A: - 线性偏好函数:适用于差异与偏好程度呈线性关系的场景,需设置无差异阈值 \(q\)(差异在此范围内认为无偏好)和严格偏好阈值 \(p\)(超过此范围即完全偏好)。 - 水平偏好函数:适用于差异在某些区间内偏好程度恒定的情况(如分为无差异、弱偏好、强偏好三级)。 - 高斯偏好函数:适用于差异的偏好程度随差异增大而连续平滑增加,无严格阈值,\(\sigma\) 控制变化速率。 - 梯形偏好函数:与线性类似,但通常用于更复杂的偏好结构(本平台实现与线性相同,作为选项保留)。
阈值可根据指标数据的标准差或专家经验设定,也可通过灵敏度分析确定。
Q3: 权重如何设置?
A: 权重应反映决策者对指标重要性的主观判断,且权重之和应为1。平台允许用户自定义权重,并提供“设为等权重”快捷按钮。若权重和不为1,系统会自动归一化并提示。
Q4: 负向指标如何处理?
A: 在归一化阶段,平台会根据指标类型自动将负向指标转换为正向意义(如线性归一化中采用最大值减法,最大值归一化中采用最小值除法),确保后续计算中“越大越好”的统一方向。
Q5: 支持多工作表吗?
A: 支持。平台允许上传包含多个工作表的Excel文件,每个工作表对应不同的数据集,系统会分别分析并输出结果,便于对比不同场景下的决策。
平台功能
EXPROM法分析平台提供以下核心功能:
数据输入
- 支持CSV、Excel、TXT多种格式。
- Excel文件支持多工作表,自动识别工作表名称。
- 数据格式要求:第一行为指标名称,第一列为方案名称,数据区域为数值型。
参数设置
- 指标类型:为每个指标指定类型(正向指标、负向指标)。
- 权重设置:自定义每个指标的权重,或一键设为等权重。
- 归一化方法:选择“线性归一化”、“向量归一化”或“最大值归一化”。
- 偏好函数类型:选择“线性”、“水平”、“高斯”或“梯形”,并设置相应的阈值参数(\(q\)、\(p\)、\(\sigma\))。
- 小数位数:控制输出精度(默认6位)。
- 显示中间结果:可选是否展示归一化矩阵、综合偏好矩阵等中间步骤。
结果展示
- 详细分析报告:包含各方案的正流、负流、净流及排序。
- 可视化图表:净流值排名图、正负流对比图。
- AI智能分析:基于DeepSeek API自动解读结果,提供决策建议(每日限3次)。
- 多格式导出:支持Excel和HTML报告下载。
工作表管理
- 多工作表自动识别,支持批量分析。
- 实时显示每个工作表的验证状态。
- 支持对比不同工作表的权重分布与排序结果。
使用建议
准备阶段:明确评价对象和指标体系,确定每个指标的类型(正向/负向)。
数据收集:使用模板文件填写,每个工作表可代表不同的数据集(如不同年份、不同专家组)。确保数据完整且无缺失值。
参数设置:
- 正确设置指标类型,负向指标务必标记为“负向”。
- 根据决策偏好设置权重,或使用等权重作为基准。
- 选择合适的归一化方法,一般情况下推荐线性归一化。
- 根据指标数据的分布和决策者对差异的敏感度,选择合适的偏好函数和阈值。可先采用默认值,再通过灵敏度分析调整。
结果解读:
- 关注净流值大小,净流越大方案越优。
- 结合正流和负流分析方案的优势与劣势:正流大表示方案在多个指标上优于其他方案;负流小表示其他方案很少能胜过它。
- 若多个方案净流接近,可结合其他定性因素综合决策。
迭代优化:
- 若结果与预期不符,可检查数据或指标类型设置。
- 尝试不同的偏好函数和阈值,观察排序的稳定性。
- 剔除冗余或高度相关的指标,简化指标体系。
平台界面

平台界面包含:数据上传区、参数设置区、多工作表预览、分析结果展示和AI分析模块
参考文献:
- Brans J P, Vincke P, Mareschal B. How to select and how to rank projects: The PROMETHEE method[J]. European Journal of Operational Research, 1986, 24(2): 228-238.
- 多准则决策分析的方法与应用[M]. 科学出版社,2011.
- 基于偏好函数的多属性决策方法研究[J]. 系统工程理论与实践,2008.