数学建模,matlab程序
准则层的判断矩阵如表4所示。
表4 准则层的判断矩阵
1 2 3 4 5 6 B11 1 1 4 1 B21 1 2 4 1 B31 1/2 1 5 3 B41/4 1/4 1/5 1 B51 1 1/3 B6
方案层的判断矩阵如表5所示。
表5 方案层的判断矩阵 B1 C1 C2 C3 B2 C1 C2 C3 B3 C1 C2 C3 C1 1 1/4 C1 1 1/41/5C1 1 3 C2 4 1 C2 4 1 1/2C2 1/31 C3 2 1/3 C3 5 2 C3 3 1 B4 C1 C2 C3 B5 C1 C2 C3 B6 C1 C2 C3
C1 1 1/3 C1 1 1 C1 1 7 C2 3 1 C2 1 1 C2 1/71 C 1/5 1/7 C 1/71/7C 1/91
层次总排序的结果如表6所示。
表6 层次总排序
研究 发展 待遇 同事 地理 单位 课题 前途 情况 位置 名气 0.1507 0.1792 0.1886 0.0472 0.1464 0.2879 0.1365 0.0974 0.2426 0.2790 0.4667 0.7986 0.6250 0.3331 0.0879 0.6491 0.4667 0.1049 0.2385 0.5695 0.6694 0.0719 0.0667 0.0965
准则
准则层权值 方案层 工作1 单排序 工作2 权值 工作3
总排序
权值 0.3952 0.2996 0.3052
根据层次总排序权值,该生最满意的工作为工作1。 计算的Matlab程序如下: clc,clear
fid=fopen('txt3.txt','r'); n1=6;n2=3; a=[];
for i=1:n1
tmp=str2num(fgetl(fid)); a=[a;tmp]; %读准则层判断矩阵 end
for i=1:n1
str1=char(['b',int2str(i),'=[];']);
str2=char(['b',int2str(i),'=[b',int2str(i),';tmp];']); eval(str1); for j=1:n2
tmp=str2num(fgetl(fid));
eval(str2); %读方案层的判断矩阵 end
-172-