猿问

基于不同标准的加权平均计算

我正在使用 PHP 开发反向拍卖系统。我的客户从不同的供应商那里获得了针对他们所要求的产品/服务的出价。在向登录客户显示收到的出价时,我需要根据以下标准根据加权平均值进行排序:

  1. 价格 (40%) -> 最低价格是好的。

  2. 供应商评级 (20%) -> 评级 = 1-5(5 为最佳)。

  3. 交付选项 (10%) -> 更多交付选项提供了最好的。

  4. 距离 (10%) -> 距客户位置的最低距离是最好的。

  5. 付款方式 (10%) -> 更多付款方式提供最好的。

到目前为止,我已经能够创建以下公式:

$weightage = ($price*.40) + ($rating*.20) + ($delivery_options*.10) + ($distance*.10) + ($payment_methods*.10);

我需要在顶部显示具有最高权重值的出价。我对根据什么对客户最有利来增加/减少权重感到困惑,即如果价格较低,那么这应该被认为最适合客户,我应该增加权重还是减少权重?

任何帮助,将不胜感激。谢谢


慕沐林林
浏览 171回答 1
1回答

沧海一幻觉

我把它整理好了。这是我所做的:报价 #1(最佳报价)价格:120评分:5交付选项:2距离:2000公里付款方式:5可用性:1价格因子= 1 - ((价格 - 最低价格) / (最高价格 - 最低价格) ) = 1评级因子=((评级 - 最低评级)/(最大评级 - 最低评级))= 1交付选项因子= ( ((交付选项 - 最小交付选项) / (最大交付选项 - 最小交付选项) ) = 1距离系数= 1 - ((距离 - 最小距离)/(最大距离 - 最小距离))= 1支付方式系数= ( (支付方式 - 最小支付方式) / (最大支付方式 - 最小支付方式) ) = 1可用性系数=((可用性 - 最小可用性)/(最大可用性 - 最小可用性))= 1报价 #1 权重=(价格因素* 40%)+(评级因素* 20%)+(交付选项因素* 10%)+(距离因素* 10%)+(付款方式因素* 10%)+(可用性因素) * 10%) = 1将相同的公式应用于其他报价,您将获得每个报价的权重,然后您可以轻松地对报价进行排序(按报价权重 Asc/Desc 排序)。
随时随地看视频慕课网APP
我要回答