欢迎光临散文网 会员登陆 & 注册

Python实现模糊Borda法

2023-07-10 00:20 作者:任永旺  | 我要投稿

要对一些数据进行评估,需要用到模糊Borda法,参考了一些论文中给出的公式,只能说,好吧,但凡写论文的那些大仙认真看看这种发放怎么实现的,那些推导共识也不会写的乱七八糟的,看了几篇这两年的论文后,我都绝望了,都啥呀。

网上搜索实现,有一篇文章:[刨根问底] 五分钟搞懂组合评价模型—模糊Borda (以2021 年大学生数模国赛C题为例)。MATLAB实现的,至少人家的公式求最大最小值时,还知道标上如下图所示是行还是列的最大最小值。那些论文中的,把红框中的j去掉,真人才。里面有一些公式的符号有点问题,但是参考着代码看,多少能看懂,模仿这别人用Python做了一个实现。里面的a要用自己的np.array做替换,其他的不需要任何改动。中间为了查看输出的数据是否正确,写了大量的print,这还是我删了很多留下的,矩阵变换,真的有点费脑子。

吐槽完毕,代码贴出来,说一下那些小细节,网上实现的,MATLAB里面点乘、叉乘、转置这些,看实现要注意的。第一个for循环里的排序如下这行代码

不能用默认的排序方式,所以a前面加了个“-”号,不然出来的结果,没法看。就这样吧,看书了。看论文应该还算常用,为啥之前连个Python实现都没人写呢,好奇。

Python实现模糊Borda法的评论 (共 条)

分享到微博请遵守国家法律