数学建模层次分析法一致性检验建立

        2023年2月11日,备赛美赛复习建模需要使用的算法。在复习层次分析法的过程可以发现,层次分析法建立判断矩阵时具有强主观性,这个时候就需要建立一致性检验,对模型的差异性进行评估。

        计算一致性比例:

                                ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        CR = \frac{CI}{RI}​​​​​​​

        其中:

                                                                CI = \frac{\gamma _{max}-n}{n-1}

        \gamma _{max}为判断矩阵的最大特征值,n为指标数(即判断矩阵的行数,RI为平均随机一致性指标通过查表可得到n对应的RI(不知道是谁发明的指标,很多文献都在用)

如果一致性比例CR = 0,说明判断矩阵是一致矩阵,不会出现任何矛盾的情况

如果一致性比例CR < 0.1,可以认为判断矩阵的“差异”不大,通过一致性检验

如果一致性比例CR >= 0.1,需要修改判断矩阵,知道CR < 0.1

        了解了一致性检验的建立方法,可以发现判断矩阵的最大特征值是不知道的,因此通过使用python 来计算最大特征值:

import numpy as np

# 输入特征矩阵
arrays = np.array([[1, 1/2, 4, 3, 3],
              [2, 1, 7, 5, 5],
              [1/4, 1/7, 1, 1/2, 1/3],
              [1/3, 1/5, 2, 1, 1],
              [1/3, 1/5, 3, 1, 1]])

#求解特征值即特征向量
lamda = np.linalg.eig(arrays)
"""
(array([ 5.07208441+0.j        , -0.03070462+0.60082743j,
        -0.03070462-0.60082743j, -0.00533758+0.05475206j,
        -0.00533758-0.05475206j]),
 array([[-0.46582183+0.j        ,  0.44186009+0.27105866j,
          0.44186009-0.27105866j, -0.36716196+0.2414553j ,
         -0.36716196-0.2414553j ],
        [-0.84086331+0.j        ,  0.77734237+0.j        ,
          0.77734237-0.j        ,  0.85752776+0.j        ,
          0.85752776-0.j        ],
        [-0.09509743+0.j        , -0.02000217-0.15570733j,
         -0.02000217+0.15570733j, -0.0190312 +0.00635723j,
         -0.0190312 -0.00635723j],
        [-0.17329948+0.j        , -0.02610008+0.07828144j,
         -0.02610008-0.07828144j, -0.07374757-0.21459801j,
         -0.07374757+0.21459801j],
        [-0.19204866+0.j        , -0.28288299+0.12469508j,
         -0.28288299-0.12469508j,  0.07483506+0.11850604j,
          0.07483506-0.11850604j]]))
          第一个array是特征值
          第二个array是对应的特征向量
          这里我们只需要第一个
"""
index = np.argmax(lamda[0])
lamda_max = np.real(lamda[0][index])

print(f'最大特征值为:{lamda_max}')
"""
大特征值为:5.072084408570216
"""

将计算结果代入公式就可以得出一致性比例啦。

欢迎大家参考学习交流。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值