参考文章:
https://zhuanlan.zhihu.com/p/32666445
模糊综合评价主要利用的使模糊数学中的隶属度来进行分析,通过一些主观的因素来将定性条件引入,进而对对象进行定量的评价。
一下记录书中P110的案例实现:
加载数据:
1 0.4 7.86 97
1 0.6 8.42 91
1 0.533 5 96
1 0.8667 8.83 96
1 0.4 6.4 96
1 0.2667 10.67 101
1 0.4667 11 108
1 0.6667 8.2 101
1 0.2667 10.9 85
1 0.5333 7.33 84
1 1.2 12.5 84
1 0.733 13.5 89
1 0.4 10 96
1 0.2 10.89 93
1 0.5333 10.25 94
1 0.8 8.46 87
0.9747 0.6667 9.55 89
0.9747 0.9333 8.5 97
0.9747 0.1333 9.14 92
0.9114 0.4 10.2 86
0.8987 0.1333 8 84
0.8481 0.3333 10.5 78
0.7595 0.6 9.89 62
def load_data():
data = []
with open('./test_fuzzy.txt') as f:
data = f.readlines()
data = [list(map(float, item.strip().split())) for item in data]
return np.array(data)
数据加载后,我们计算每种因素不同评价的隶属度,这里的不同评价就引入了主管因素,简单来说就是计算不同人所占比例。
def get_memMat(data):
memMat = np.zeros(