You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PROMETHEE II方法及PyDecision库中表示非效益型准则?

在PyDecision的PROMETHEE中处理非效益型准则(以手机选型为例)

PyDecision的PROMETHEE实现默认针对效益型准则(最大化)设计,没有直接参数指定准则类型。对于成本这类需最小化的非效益型准则,核心思路是将其转换为等效的效益型指标,再代入PROMETHEE计算。

处理方法(两种常用方式)

针对手机选型中的成本准则,可任选一种转换方式:

  • 方法1:取倒数(需避免成本为0的情况):转换后的值越大,代表原始成本越低,符合效益型要求。
  • 方法2:反向差值:用成本列的最大值减去每个样本的成本值,新值越大则原始成本越低。

代码示例(以手机选型场景为例)

假设你有3款手机的原始数据:

型号成本(元)RAM(GB)存储(GB)
A30008256
B400016512
C25008128

以下是完整的PROMETHEE计算代码,包含成本准则的转换:

# 导入PyDecision的PROMETHEE模块
from pydecision.models import promethee_i, promethee_ii

# 1. 准备原始数据:每行对应一个备选方案,列顺序为[成本, RAM, 存储]
original_data = [
    [3000, 8, 256],
    [4000, 16, 512],
    [2500, 8, 128]
]

# 2. 转换非效益型准则(成本):这里使用反向差值法
costs = [row[0] for row in original_data]
max_cost = max(costs)
transformed_costs = [max_cost - c for c in costs]

# 3. 组装转换后的数据集:替换原始成本为转换后的值
transformed_data = [
    [transformed_costs[i], original_data[i][1], original_data[i][2]]
    for i in range(len(original_data))
]

# 4. 定义准则权重(可根据实际需求调整,示例中成本、RAM、存储权重为0.4, 0.3, 0.3)
weights = [0.4, 0.3, 0.3]

# 5. 定义每个准则的偏好函数(默认用线性偏好,可选'linear'/'vshape'/'ushape'等)
preference_functions = ['linear', 'linear', 'linear']

# 6. 定义偏好函数参数:线性函数需设置无差异阈值q和偏好阈值p
p_values = [
    max([row[0] for row in transformed_data]) - min([row[0] for row in transformed_data]),
    max([row[1] for row in transformed_data]) - min([row[1] for row in transformed_data]),
    max([row[2] for row in transformed_data]) - min([row[2] for row in transformed_data])
]
q_values = [0, 0, 0]  # 无无差异阈值

# 7. 运行PROMETHEE计算
phi_plus, phi_minus, phi = promethee_i(transformed_data, weights, preference_functions, q_values, p_values)
ranking = promethee_ii(phi)

# 输出结果
print("PROMETHEE I 正流量:", phi_plus)
print("PROMETHEE I 负流量:", phi_minus)
print("PROMETHEE II 净流量:", phi)
print("最终排名(从优到劣):", ranking)

关键说明

  • 转换后的成本指标完全适配PROMETHEE的效益型准则逻辑,计算流程和官方演示一致。
  • 若选择取倒数法,只需将transformed_costs = [1/c for c in costs],注意提前处理成本为0的异常情况。
  • 偏好函数和权重可根据决策需求灵活调整,上述示例为通用配置。

内容的提问来源于stack exchange,提问作者nanitoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 09:20:39