资源描述
利用层次分析法解决优质男的择偶问题
本文研究的是从四个优质男中挑出一位当男朋友.首先,理解了四位男生的基本资料。其次,进行综合量化评价,主要运用的方法是层次分析法和模糊综合评价。最后,依据所得权重大小对优质男排序.我们对优质男进行了横向和纵向分析.依据优质男评分基本原则。首先,在研究优质男的基础上,对优质男惊醒了横向比较,幷按照优良中差四个等级做出评价。其次,采取纵向分析的方法,找到优质男的优点与不足,写出每个优质男的评语。最后,结合横向和纵向分析对优质男的综合评价。
一、问题的重述
一个好的男人和一个坏的男人,给女生带来的影响是非常大的。幸福,可以说是选另一个的时候就决定了。婚姻是人生大事.女性如何正确选择适合自己的对象?在此,我们向女生们提出一些关于优质男择偶的指导意见。
二、问题的分析:
对于这类问题,普遍可以利用层次分析法(AHP)对所有方案进行优先排 序。本问题首先分析内在因素间的联系与结构,并把这种结构划分为三层即可,即目标层,准则层,方案层。把各层间诸要素的联系用线表示出来,接着是同层因素之间对上层因素重要性进行评价,并利用“两两比较法”建立比较矩阵,求的权系数,再进行一致性检验,如通过,则求得的权重系数可以被接受,否则,应重新评判。再进行单层权重评判的基础上,再进行层次间重要性组合权重系数的计算。
最后求出各个方案所占的权重,即可确定优质男的优先顺序。
三、模型假设:
1、假设四个因素中,家庭包括了家庭背景,经济条件等其他综合因素。
2假设女生们所考察的因素除了毕业学校、性格、外貌、家庭,不考虑其他因素。
3、假设女生们在构建成对比矩阵的观点一致.
4、假设以备选A,B,C和D为例分析作为参考.
四、模型的建立和求解:
STEP 1:建立层次分析结构模型
选优质男主要层次如下所示:
目标层:优质男
准则层:毕业学校 性格 外貌 家庭
方案层:A B C D
该问题十分明确,三个层次的要素也十分明显。首先将有关因素按照不同的属性从上到下分为三个层次,分别为目标层、中间层和方案层.最上层为目标层:最终要选的优质男;中间层为准则层:毕业学校 性格 外貌 家庭;最下层为方案层:A B C D.其中,这三个层次相互影响,上层受下层影响,而层内各因素基本上相对独立,将这三个层次用图表示即为:
STEP 2:构造成对比较阵
在构造成对比矩阵之前,引入一个评价指标,即由女性们评价毕业学校,性格、外貌、家庭等四个指标对于择偶决定的影响大小,采用1—9级相对重要性作为尺度的方法.其详细内容如下所示:
1 2 3 4 5 6 7 8 9
Ci/Cj的重要性
相同 稍强 强 明显强 绝对强
在网络上通过对以上四个备选四个条件评价指标的实际情况的调查,得到下面几个表格。其中,表格1是对四种指标之间的相对重要性进行比较,表格2到表格5则是针对于每种具体的指标,根据四个备选在该指标上的优劣进行比较,最终得出以下的对比矩阵:
毕业学校
性格
外貌
家庭
毕业学校
1
1/6
1/5
1/8
性格
6
1
1
1/2
外貌
5
1
1
1/2
家庭
8
2
2
1
表格1
表格2
毕业学校
A
B
C
D
A
1
3
7
9
B
1/3
1
3
7
C
1/7
1/3
1
3
D
1/9
1/7
1/3
1
表格3、
性格
A
B
C
D
A
1
3
5
9
B
1/3
1
2
5
C
1/5
1/2
1
3
D
1/9
1/5
1/3
1
表格4、
外表
A
B
C
D
A
1
1/2
1/3
1/5
B
2
1
1/2
1/3
C
3
2
1
1/2
D
5
3
2
1
表格5、
家庭
A
B
C
D
A
1
1/3
1/5
1/9
B
3
1
1/2
1/5
C
5
2
1
1/3
D
9
5
3
1
STEP 3:计算权向量并作一致性检验
借助数学软件Matlab对每一个成对比矩阵计算最大特征根和特征向量,并作一致性检验,若通过,则可认为成对比矩阵的不一致程度在容许范围之内,可用其特征向量作为权向量。否则则应该重新构造成对比矩阵。
在这里引入计算公式与随机一致性指标:
1、定义一致性指标;CI=l—n/n-1(CI 越大,不一致越严重)
2、随机一致性指标RI:
表格6、(随机一致性指标RI)
N
1
2
3
4
5
6
7
8
9
10
11
RI
0
0
0.58
0。9
1。12
1.24
1.32
1.41
1.45
1.49
1.51
3、定义一致性比率 CR = CI/RI(当CR〈0。1时,通过一致性检验)
利用Matlab软件计算可得:(注:Matlab程序以及语句、结果在附录中)
(1)四种指标之间的相对重要性:
表格1、成对比矩阵由Matlab得出结果
最大特征根
l=4.0155
权向量
W=(0。0847,0。4381,0.4170,0.7981)T
一致性比率
CR=0.005166<0。1
(2)四个备选在对应指标上的相对重要性:
表格2(毕业学校)成对比矩阵由Matlab得出结果
最大特征根
l=4。0990
权向量
W=(0.9060,0.3909,0。1481,0.0664)T
一致性比率
CR1=0.033<0。1
表格3(性格)成对比矩阵由Matlab得出结果
最大特征根
l=4。0370
权向量
W2=(0.9094,0。3582,0。1963,0.0784)T
一致性比率
CR2=0。01233〈0。1
表格4(外貌)成对比矩阵由Matlab得出结果
最大特征根
l=4。0145
权向量
W3=(0。1513,0。2694,0.4667,0。8287)T
一致性比率
CR=0.004833<0。1
表格5(家庭)成对比矩阵由Matlab得出结果
最大特征根
l=4.0370
权向量
W4=(0。0784,0。1963,0.3582,0.9094)T
一致性比率
CR=0。01233〈0.1
在上述表格中,可以看出所有的CR都小于0。1,表示这5个成对比矩阵的不一致程度在容许范围内,故其特征向量均可以用作权向量。
STEP 4: 计算组合权向量(做组合一致性检验)
计算组合权向量并将最后结果作为决策的定量依据。将上述5个表格中得到的结果融合并用EXCEL进行处理,计算最终的组合权向量。
毕业学校
性格
外貌
家庭
组合权向量
准则层权重
0。0847
,0.4381
0。4170
0.7981
A
0。9060
0。9094
0。1513
0。0784
0。581621
B
0.3909
0.3582
0。2694
0。1963
0.459043
C
0。1481
0.1963
0。4667
0.3582
0.579036
D
0。0664
0.0784
0.8287
0.9094
1.111331
最大特征值
4.0990
4.0370
4.0145
4。0370
CR
0。033
0.01233
0。004833
0。01233
综上可得,方案1在目标中的组合权重应为方案1在准则层的权重与相应准则对于目标的权重的两两乘积之和,即:
方案1、方案2、方案3、方案4在目标中的组合权重分别为
0.581621 0。459043 0。579036 1。111331
由上述表格我们可以得到最终结果:D〉A>C>B,故最后我们的选择会是备选D。
五、模型的推广
层次分析把研究对象作为一个系统,按照分解、比较判断、综合的思维方式进行决策。把量和定性的方法结合起来,能处理许多传统的最优化技术无法着手的实际问题,应用范围很广。具有中等文化程度以上的人即可了解层次分析的基本原理和掌握它的基本步骤,计算也非常简便。但也有它的局限性,可以用粗略、主观等词来概括,第一,它只能从原有的方案中选优,不能生成新方案;第二,它的比较判断直到结果都是粗糙的;第三,人主观因素的作用很大,当然,采取专家群体判断的方法是克服这个缺点的一种途径。
六、附录
Matlab的代码
A=[1,1/6,1/5,1/8;6,1,1,1/2;5,1,1,1/2;8,2,2,1];
〉> [x,y]=eig(A);
>〉 [maxy,m]=find(y==max(max(y)));
>〉 w=x(:,m)/sum(x(:,m))
w =
0.0489
0.2530
0.2408
0。4573
〉> b=[1,1/6,1/5,1/8;6,1,1,1/2;5,1,1,1/2;8,2,2,1];
>〉 [v,d]=eig(b);
>> r=abs(sum(d));
〉> n=find(r==max(r));
>> max_d_b=d(n,n)
max_d_b =
4。0155
>> max_v_b=v(:,n)
max_v_b =
0。0847
0.4381
0.4170
0。7918
〉> A=[1,3,7,9;1/3,1,3,7;1/7,1/3,1,3;1/9,1/7,1/3,1];
〉〉 [x,y]=eig(A);
>〉 [maxy,m]=find(y==max(max(y)));
〉> w=x(:,m)/sum(x(:,m))
w =
0。5994
0。2586
0.0980
0.0440
〉> b=[1,3,7,9;1/3,1,3,7;1/7,1/3,1,3;1/9,1/7,1/3,1];
〉〉 [v,d]=eig(b);
〉〉 n=find(r==max(r));
>〉 r=abs(sum(d));
>> max_d_b=d(n,n)
max_d_b =
4。0990
〉> max_v_b=v(:,n)
max_v_b =
0.9060
0。3909
0.1481
0。0664
〉> A=[1,3,5,9;1/3,1,2,5;1/5,1/2,1,3;1/9,1/5,1/3,1];
〉〉 [x,y]=eig(A);
>〉 [maxy,m]=find(y==max(max(y)));
>〉 w=x(:,m)/sum(x(:,m))
w =
0。5896
0.2322
0.1273
0.0508
>> b=[1,3,5,9;1/3,1,2,5;1/5,1/2,1,3;1/9,1/5,1/3,1];
〉> [v,d]=eig(b);
>> n=find(r==max(r));
>> r=abs(sum(d));
>> max_d_b=d(n,n)
max_d_b =
4。0370
〉> max_v_b=v(:,n)
max_v_b =
—0。9094
—0。3582
—0.1963
-0.0784
A=[1,1/2,1/3,1/5;2,1,1/2,1/3;3,2,1,1/2;5,3,2,1];
〉〉 [x,y]=eig(A);
〉〉 [maxy,m]=find(y==max(max(y)));
>> w=x(:,m)/sum(x(:,m))
w =
0.0882
0。1570
0。2720
0.4829
〉> b=[1,1/2,1/3,1/5;2,1,1/2,1/3;3,2,1,1/2;5,3,2,1];
〉〉 [v,d]=eig(b);
>〉 r=abs(sum(d));
>> n=find(r==max(r));
〉〉 max_d_b=d(n,n)
max_d_b =
4.0145
〉〉 max_v_b=v(:,n)
max_v_b =
—0。1513
—0.2694
-0.4667
—0。8287
A=[1,1/3,1/5,1/9;3,1,1/2,1/5;5,2,1,1/3;9,5,3,1];
〉〉 [x,y]=eig(A);
>> [maxy,m]=find(y==max(max(y)));
〉〉 w=x(:,m)/sum(x(:,m))
w =
0.0508
0。1273
0.2322
0.5896
>〉 b=[1,1/3,1/5,1/9;3,1,1/2,1/5;5,2,1,1/3;9,5,3,1];
>> [v,d]=eig(b);
〉> r=abs(sum(d));
〉〉 n=find(r==max(r));
〉〉 max_d_b=d(n,n)
max_d_b =
4。0370
〉〉 max_v_b=v(:,n)
max_v_b =
—0。0784
—0。1963
-0.3582
-0.9094
展开阅读全文