层次分析法php,使用层次分析法,需要求矩阵的最大特征根入max
private static $_RI = array(
'1' => 0,
'2' => 0,
'3' => 0.51,
'4' => 0.89,
'5' => 1.12,
'6' => 1.25,
'7' => 1.35,
'8' => 1.42,
'9' => 1.46,
'10' => 1.49,
'11' => 1.52,
'12' => 1.54
);
/**
* 层次分析法
* @param $indexScore ---> 专家对每项指标所打的评分
* @return $guiyi ---> 各指标的权重
*/
public static function AHP($indexScore)
{
$arr_A = [];//矩阵A
$n = count($indexScore);
if ($n <= 1) {
return false;
}
foreach ($indexScore as $key => $val) {
$arr_A[$key] = [];
foreach ($indexScore as $v) {
$arr_A[$key][] = $val / $v;
}
}
$weight = [];
foreach ($arr_A as $val) {
$product = 1;
foreach ($val as $v) {
$product *= $v;
}
$weight[] = pow($product, 1 / $n);
}
$sum = array_sum($weight);
$guiyi = [];//特征向量 ---> 指标权重
if ($sum) {
foreach ($weight as $val) {
$guiyi[] = $val / $sum;
}
}
//$eigenvalue ---> 最大特征根
$eigenvalue = static::getEigenvalue($arr_A, $guiyi);
$_RI = static::$_RI[$n];
$_CI = ($eigenvalue - $n) / ($n - 1);
$_CR = $_CI / $_RI;
if ($_CR < 0.1) {
return $guiyi;
} else {
return '打分不合理';
}
}
/*求最大的特征值*/
public static function getEigenvalue($data1, $data2)
{
$eigenvalue = [];
foreach ($data1 as $key => $val) {
$sum = 0;
foreach ($val as $k => $v) {
$sum += $v * $data2[$k];
}
$eigenvalue[] = $sum;
}
return array_sum($eigenvalue);
}
层次分析法php,使用层次分析法,需要求矩阵的最大特征根入max相关推荐
- ahp层次分析法_基于层次分析法(AHP)的店铺选址应用研究
导读 在连锁行业,店铺选址是其中很重要的一个方面.影响店铺选址的指标(因素)很多,决策中经常需要对店铺影响各指标进行量化分析.本文应用层级分析法(AHP),对影响店铺选址的指标(因素)权重进行量化分析 ...
- ahp层次分析法软件_层次分析法在历史街区研究中的应用简析
摘要 AHP (Analytic Hierarchy Process)层次分析法通常被运用于解决多目标.多标准.多要素.多层次的非结构化的复杂决策性问题,特别是战略决策性问题,在建筑.规划.风景园林等 ...
- 用计算机转换层次的例子,两类层次分析法的转换及在应用中的比较-计算机工程与应用.PDF...
两类层次分析法的转换及在应用中的比较-计算机工程与应用 114 2012 ,48 (9) Computer Engineering and Applications 计算机工程与应用 两类层次分析法的 ...
- MATLAB实现层次分析法AHP及案例分析
层次分析法(Analytic Hierarchy Process, AHP) 1 模型背景 美国运筹学家匹兹堡大学教授Saaty在20世纪70年代初提出的一种层次权重决策分析方法. 层次分析法(Ana ...
- 熵权法EW与层次分析法AHP之数学原理及实例
1.概述 对于多指标或多目标决策问题,由于涉及到多个指标或属性,在对实测数据进行评价时,需要确定这些指标之间的相互权重,各指标权重的客观性与合理性也会大大影响到最终的评价结果.目前对于指标权重确定的方 ...
- 综合评价分析法:熵权法matlab实现+层次分析法matlab实现
综合评价分析法:熵权法matlab实现+层次分析法matlab实现 层次分析法matlab实现 clc;clear%层次分析法matlab实现A=[1 1/9 1/2 1/4 1/6 9 1 6 5 ...
- 产品需求分析与市场分析方法汇总(SWOT+PDCA+波士顿矩阵BCG+5W2H分析法+STAR关键事件分析法+目标管理SMART+时间管理紧急重要矩阵+WBS任务分解法)
产品需求分析与市场分析方法汇总(SWOT+PDCA+波士顿矩阵BCG+5W2H分析法+STAR关键事件分析法+目标管理SMART+时间管理紧急重要矩阵+WBS任务分解法) 产品需求分析与市场分析方法汇 ...
- R语言时间序列(time series)分析实战:简单指数平滑法预测
R语言时间序列(time series)分析实战:简单指数平滑法预测 目录
- 【编译原理笔记06】语法分析,移入-归约分析:自底向上的分析,LR(0)分析法,LR(0)分析表的构建(基于自动机)
本次笔记内容: 4-8 自底向上的分析概述 4-9 LR分析法概述 4-10 LR0分析 4-11 LR0分析表构造 本节课幻灯片,见于我的 GitHub 仓库:第6讲 语法分析_3.pdf 本节课介 ...
- 图像二值化方法及适用场景分析(OTSU Trangle 自适应阈值分割)
图像二值化 应用场景 二值图像定义 阈值获取的方法 手动阈值法 自动阈值法 灰度均值法 基于直方图均值法 OTSU Triangle 自适应均值阈值分割方法 总结 参考文献 应用场景 二值图像处理与分 ...
最新文章
- 优秀的数据分析师应该具备哪些技能和特质?
- C/S架构应用程序开发培训笔记
- Java并发编程(5):volatile变量修饰符—意料之外的问题(含代码)
- 自动增益(AGC)算法FPGA实现
- Linux系列-Red Hat5平台下的Postfix邮件服务搭建(二)
- 保驾护航金三银四,内容太过真实
- 不用空格怎么打两个空格_韩语空格怎么空?90%的韩语初学者都会出错!
- 杭电2066--一个人的旅行(Floyd)
- CSS 命名 BEM 。线上样式不对。已经更新。El-input__suffix偏上。字体样式 苹方-简 PingFangSC-Regular。echarts字体。
- SQLSERVER 2000清除挂起
- 安卓内存监控悬浮窗,6年菜鸟开发面试字节跳动安卓研发岗,面试建议
- J2EE / TOMCAT / TOMCAT系列教材 (一)- 教程
- 408考研经验分享(待更
- 数字通信系统的性能及可靠性
- 用计算机就行DNA翻译的程序,南邮通达科技英语原文翻译Lession 2 CTEXT
- vue.js基础 之 过滤器分类及使用
- 计算机串口通信的作用,串口通信的具体用途是什么
- html flv jquery 插件,基于js与flash实现的网站flv视频播放插件代码
- macOS Big Sur 11.7.1 (20G918) 正式版 ISO、PKG、DMG、IPSW 下载
- 60种生活小窍门,分享