PROMETHEE法-VI

方法概述

PROMETHEE VI 是 PROMETHEE 多准则决策方法家族中引入机器学习技术的创新扩展。与传统 PROMETHEE 方法依赖决策者显式定义偏好函数和阈值不同,PROMETHEE VI 通过神经网络、随机森林或支持向量机等机器学习算法,从历史决策数据中自动学习方案的偏好模式与排序规则,从而构建智能化的排序模型。该方法将多准则决策与监督学习相结合,适用于存在大量历史评价数据、偏好关系复杂难以显式定义、或需要对新方案进行快速预测的场景。

PROMETHEE VI 的核心思想是:利用 PROMETHEE II 的净偏好流作为训练目标,将方案在各准则上的指标值作为特征,训练机器学习模型来拟合特征与净流之间的映射关系。训练好的模型可用于预测新方案的净偏好流并排序,同时通过特征重要性分析和模型解释工具(如 SHAP 值、偏依赖图)揭示各准则对排序结果的影响。

计算步骤

1. 数据准备与预处理

设有 \(m\) 个历史方案 \(A_i\)\(i=1,\dots,m\))和 \(n\) 个评价准则 \(C_j\)\(j=1,\dots,n\)),构成特征矩阵 \(X = [x_{ij}]_{m \times n}\)。第一列为方案名称,后续列为各准则数值。

  • 缺失值处理:将缺失值替换为 0。
  • 特征标准化(可选):对特征进行 Z-score 标准化,消除量纲影响。
  • 特征选择(可选):基于方差分析选取重要性最高的前 \(k\) 个特征,降低模型复杂度。

2. 生成训练目标(PROMETHEE II 净偏好流)

对于回归任务,首先使用标准 PROMETHEE II 计算每个方案的净偏好流 \(\phi(i)\)。计算公式涉及偏好函数、权重、方向等参数(此处使用默认参数,用户也可自定义)。净流 \(\phi(i)\) 即为回归模型的目标变量

对于分类任务,将净流排序转换为离散类别(如分为 3~5 个等级)。

3. 训练集与验证集划分

按照用户指定的训练比例(默认 70%),将数据随机划分为训练集和验证集,用于模型训练和性能评估。

4. 机器学习模型训练

根据用户选择的方法,训练相应的机器学习模型:

  • 神经网络(Neural Network):使用 neuralnet 包训练多层前馈神经网络。用户可指定隐藏层数、每层神经元数(支持逗号分隔多层结构)和激活函数(Sigmoid 或 Tanh)。
  • 随机森林(Random Forest):使用 randomForest 包构建集成决策树模型。用户可指定树的数量、每棵树的特征数(mtry)和最大深度。
  • 支持向量机(SVM):使用 kernlab 包的 ksvm 函数,采用 RBF 核函数进行回归或分类。

5. 交叉验证与模型评估

采用 \(K\) 折交叉验证(用户指定折数,默认 5)评估模型泛化性能。计算以下指标:

  • MSE:均方误差
  • RMSE:均方根误差
  • MAE:平均绝对误差
  • \(R^2\):决定系数(回归任务)

若提供独立的测试数据集,则在测试集上评估模型性能。

6. 特征重要性分析

  • 随机森林:使用内置的 %IncMSE(基于节点纯度)评估特征重要性。
  • 其他方法:基于特征与预测值的相关系数进行简化评估。

特征重要性排名帮助识别对排序影响最大的准则。

7. 模型解释与可视化

  • 偏依赖图:展示主要特征变化时预测输出的变化趋势。
  • SHAP 值分析(简化版):利用特征重要性近似 SHAP 值,解释各特征对单个方案预测的贡献。
  • 局部解释图:对比部分方案的预测值与实际值,评估模型在个体层面的表现。

8. 新方案预测

若用户提供测试数据集(无目标变量),模型可对测试集中的新方案进行预测,输出其预测净偏好流,并按预测值排序。

案例分析

案例背景:某企业积累了 50 个过去项目的评价数据,包含 5 个准则(收益、风险、成本、周期、市场潜力)和对应的项目综合评分(已转换为 PROMETHEE II 净流)。现需训练一个机器学习模型,用于快速评估新项目的优先级。

参数设置:使用神经网络(1 个隐藏层,10 个神经元,Sigmoid 激活),训练比例 70%,5 折交叉验证,特征标准化开启,学习目标为回归(预测净流)。

模型性能(示例): - 训练集 \(R^2 = 0.89\),MAE = 0.12 - 验证集 \(R^2 = 0.82\),MAE = 0.18 - 交叉验证平均 \(R^2 = 0.85 \pm 0.04\)

特征重要性(Top 3): 1. 收益(重要性 0.35) 2. 市场潜力(重要性 0.28) 3. 风险(重要性 0.22)

新方案预测:两个新项目 X、Y 的预测净流分别为 0.72 和 0.45,排序为 X > Y。

结论:PROMETHEE VI 成功学习了历史数据中的偏好模式,预测结果与领域专家判断一致,可用于快速筛选新项目。

常见问题

Q1: PROMETHEE VI 与传统 PROMETHEE 方法有何不同?

A: 传统 PROMETHEE 需要决策者显式设定偏好函数、阈值和权重;PROMETHEE VI 从历史数据中自动学习这些偏好关系,无需人工干预,适合大数据驱动的决策场景。

Q2: 训练数据需要多少样本?

A: 建议至少有 30~50 个样本,样本越多模型泛化能力越强。若样本较少,可降低模型复杂度(如减少神经网络隐藏层神经元数)。

Q3: 如何选择机器学习方法?

A: 神经网络适合捕捉复杂非线性关系;随机森林对噪声和异常值稳健,且提供特征重要性;SVM 在小样本下表现良好。建议尝试多种方法并对比交叉验证性能后选择最优者。

Q4: 特征标准化对结果影响大吗?

A: 对于神经网络和 SVM 影响较大,因为这两种方法依赖距离计算;随机森林不受量纲影响。建议默认开启特征标准化。

Q5: 分类任务与回归任务如何选择?

A: 若决策者关注精确的净偏好流数值,选择回归;若仅需方案所属等级(如优、良、中、差),选择分类。分类模型通常更稳健,但信息粒度较粗。

Q6: 如何处理新方案与训练集特征不一致的情况?

A: 若测试数据缺少某些训练特征,程序会用 0 填充;若特征顺序不同,程序会自动匹配列名。但建议新方案与训练数据具有相同的特征集合。

平台功能

  • 数据输入:支持 CSV、Excel、TXT,可分别上传训练集和测试集。
  • 机器学习方法:神经网络、随机森林、支持向量机三种可选。
  • 参数控制
    • 训练集比例(0.1~0.9)
    • 交叉验证折数(2~10)
    • 学习目标(回归/分类)
    • 特征标准化(开/关)
    • 自动特征选择(开/关)及特征数量
    • 神经网络:隐藏层数、神经元数(支持多层)、激活函数
    • 随机森林:树数量、每树特征数、最大深度
  • 结果展示
    • 机器学习排序结果(预测值与实际值对比)
    • 模型性能指标(MSE、RMSE、MAE、\(R^2\)
    • 交叉验证结果
    • 学习曲线
    • 特征重要性排名与可视化
    • 偏依赖图
    • SHAP 值分析(简化版)
    • 局部解释图(预测 vs 实际)
    • 新方案预测结果与不确定性分析
  • 模型管理:支持下载训练好的模型(.rds 格式)和加载已有模型进行预测。
  • AI 智能分析:自动解读最优方案、模型性能和排序合理性(每日限 3 次,需配置 API 密钥)。
  • 报告导出:Excel 和 HTML 格式,包含所有表格和图表。

使用建议

  1. 数据质量:确保训练数据具有足够的代表性和准确性,异常值会严重影响模型性能。
  2. 特征工程:若原始准则过多,可先用特征选择筛选重要特征,降低过拟合风险。
  3. 模型选择:先尝试随机森林(稳健且易解释),若性能不足再尝试神经网络。
  4. 交叉验证:务必使用交叉验证评估模型,避免仅依赖训练集性能导致的乐观估计。
  5. 新方案预测:新方案的特征应与训练数据特征一致,否则预测结果不可靠。
  6. 模型可解释性:结合特征重要性和偏依赖图理解模型决策逻辑,增强决策透明度。

平台界面

官方地址:https://superr.online

PROMETHEE VI 工具界面

PROMETHEE VI 工具界面

平台界面包含:数据上传区、偏好函数参数设置区、权重设置区、多工作表预览、分析结果展示和AI分析模块

参考文献

  1. Brans, J. P., & Mareschal, B. (1995). The PROMETHEE VI procedure: How to select a good compromise. PROMETHEE Methods.
  2. Brans, J. P., & Vincke, P. (1985). A preference ranking organisation method. Management Science, 31(6), 647-656.
  3. Behzadian, M., et al. (2010). PROMETHEE: A comprehensive literature review. European Journal of Operational Research, 200(1), 198-215.
  4. 机器学习在多准则决策中的应用综述[J]. 系统工程理论与实践, 2021, 41(8): 1983-1996.