MATLAB用于层次分析法在计算过程中出现错误输出 10

求大神赐教MATLAB用于层次分析法在计算过程中出现错误输出%%子准则层5B5=[1,1/2,1/2;2,1,1;2,1,1];%REP[x,y]=eig(B5);eig... 求大神赐教

MATLAB用于层次分析法在计算过程中出现错误输出

%%子准则层5
B5=[1,1/2,1/2;2,1,1;2,1,1];%REP
[x,y]=eig(B5);
eigenvalue=diag(y);
lamda=eigenvalue(1);
ci25=(lamda-3)/2
cr25=ci25/0.58
w25=x(:,1)/sum(x(:,1))

ci25 =
-1.5000
cr25 =
-2.5862
w25 =
-1.0000
1.0000
1.0000
实际上结果应该为
w25=
0.200
0.400
0.400
这个结果我用EXCEL验算过,但是不知道MATLAB为什么会出上面的结果
求大神赐教
展开
 我来答
DoramiHe
2017-06-25 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59542
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
一楼说的没错。
%//一致性检验:需满足随机一致性比率CR<0.1//
% CR小于0.1判断矩阵才满足一致性检验
% CR不能为负值,CR如果为负值,要么是计算错误了,检查一下计算过程;另一种,要么是你构建的判断矩阵有问题,再调整矩阵里面数值的两两比较关系。
% 若CR=0有两种情况,其一就是你保留的小数位数少,其二就是真的等于0。但没关系,一般这个比值小于0.1证明矩阵一致性通过检验。
% 若CR>0.1,则判断矩阵需要调整,你两两比较的结果重要性需要调整
人比较神
2017-06-25 · TA获得超过119个赞
知道答主
回答量:87
采纳率:0%
帮助的人:46.9万
展开全部
换个版本
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式