于是我们得到统一趋势化的矩阵:
, (5)
我们取矩阵B中各列元素的最大值作为分量,得到理想球队的实力向量U然后,我们计算各参赛队与理想球队的马氏距离,显然与理想球队的距离越小,则该队名次越靠前[24]。
设 , ,是从均值向量为μ,协方差矩阵为Σ的总体G中抽取的两个样品,则X,Y两点之间的距离是:
(6)
我们利用MATLAB软件计算距离,并给出各队的名次排序,为了验证我们的结果的可靠性,我们又建立了最差球队(反向点),其分量分别为矩阵B中各列元素的最小值,显然,与反向点距离越大的球队排名应该越靠前,两种距离之间的相关系数为:
R=-0.99620564230531
由Spearman相关系数计算公式:
(7)
其中,
, ,
分别表示第i个参赛队在两种距离下的排序,我们得到的秩相关系数为:
Spr=0.99300699300699
表明我们给出的方法具有较高的可靠性,利用MATLAB软件我们可以对两种排序结果进行秩和比检验,以验证结论。
4.2 模型建立
本方案设计需要运用MATLAB软件进行矩阵运算。所以需要简要介绍一下矩阵在MATLAB中的运算:
4.2.1 MATLAB中的矩阵运算
(1)矩阵的建立与表示法
在命令窗口中输入:A=[1,2,3;4,5,6;7,8,9]
可以得到: A=
1 2 3
4 5 6
7 8 9
若要显示整行或整列,则可以用(:)冒号来表示。冒(:)代表矩阵中行(ROWS)或(COLUMNS)的全部。
例如执行命令:A(:,2),就会显示第2列的全部,结果为:
ans =
2
5
8
其他特殊矩阵的生成方法:
① eye (m,n)或eye (m) 产生m*n 或 m*m的单位矩阵。例如:
eye (3,4)与eye (3)分别产生如下矩阵:
1 0 0 0 1 0 0
0 1 0 0 0 1 0
0 0 1 0 0 0 1
② zeros (m,n) 或 zeros (m) 产生m*n 或m*m 的零矩阵。例如: zeros (3,4) 与zeros (3) 分别产生如下矩阵:
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
③ ones (m,n) 或ones (m) 产生m*n或m*m的全部元素为1的矩阵。例如:ones (3,4)与ones(3)分别产生如下矩阵:
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
(2)常用矩阵函数
① d=eig (A) 返回矩阵A的特征值所组成的列向量;[v,d]=eig (A) 返回分别由矩阵A的特征向量和特征值(以其为主对角线元素,其余元素为零)的两个矩阵。
例如执行命令:[v,d]=eig (A) 结果为:
v = d =
0.2320 0.7858 0.4082 16.1168 0 0
0.5253 0.0868 -0.8165 0 -1.1168 0
0.8187 -0.6123 0.4082 0 0 -0.0000
其中v (:,i) 为d (i,i)所对应的特征向量。
② det (A) 计算行列式A的值。例如:det (A) 结果为:ans = 0
③ expm (A) 对矩阵A求幂。例如:expm (A) 结果为:
ans =
1.0e+006 *1.1189 1.3748 1.6307
2.5339 3.1134 3.6929
3.9489 4.8520 5.7552
④ inv (A)
求矩阵A的逆。例如:inv (A) 结果为:
Warning: Matrix is close to singular or badly scaled.Results may be inaccurate. RCOND = 2.055969e-018.
ans = 1.0e+016 *
-0.4504 0.9007 -0.4504
0.9007 -1.8014 0.9007
-0.4504 0.9007 -0.4504
⑤ orth (A) 返回对应于A的正交化矩阵。例如:orth (A) 结果为:
ans =
0.2148 0.8872
0.5206 0.2496
0.8263 -0.3879
⑥ poly (A) 若A为一矩阵,则返回A的特征多项式。例如:poly (A) 结果为:
ans =1.0000 -15.0000 -18.0000 -0.0000
若A为一向量,则返回以A的元素为根的特征多项式。例如:r=[1,2,3]; p= poly (r) 结果为:
p =1 -6 11 -6
⑦ rank (A) 计算矩阵A的秩。例如:r=rank (A) 结果为:r = 2。
(3)矩阵的四则运算符号
加 "+" 减 "—" 乘 "*"
除 "/" 共轭转置 "'" 非共轭转置 ".'"
例如:b=[1+2i;3+4i]
b =
1.0000 + 2.0000i
3.0000 + 4.0000i
b'
ans =
1.0000 - 2.0000i 3.0000 - 4.0000i
b.'
ans =
1.0000 + 2.0000i 3.0000 + 4.0000i
(4)矩阵分解:
① [q,r]=qr (A) 将矩阵A做正交化分解,使得A=q*r.q为单位矩阵 (unitary matrix),其范数(norm)为1。r为对角化的上三角矩阵。例如:
[q,r]=qr(A)
q =
-0.1231 0.9045 0.4082
-0.4924 0.3015 -0.8165
-0.8616 -0.3015 0.4082
r =
-8.1240 -9.6011 -11.0782
0 0.9045 1.8091
0 0 -0.0000
norm(q)
ans = 1.0000
② [L,U]=lu (A) 将矩阵A做对角线分解,使得A=L*U,L为下三角矩阵(lower triangular matrix),U为上三角矩阵(upper triangular matrix)[25]。
例如:
[L,U]=lu(A)
L =
0.1429 1.0000 0
0.5714 0.5000 1.0000
1.0000 0 0
U =
7.0000 8.0000 9.0000
0 0.8571 1.7143
0 0 0.0000
4.2.2 模型的建立
根据上面的分析,我们将各球队的数据构筑一个实力向量矩阵W,再建立理想点与反向点,然后利用各点与理想点以及反向点的距离来得出Spearman相关系数,从而确定各队的排名。具体程序代码如下:
a=[W11 W21 W31 W41
W12 W22 W32 W42
...
W1i W2i W3i W4i]; (%实力向量矩阵W)
转贴于 酷文网-论文下载中心 http://www.coolwen.net
共6页: 上一页 [1] [2] [3] 4 [5] [6] 下一页
网摘收藏: