灰色系统理论及基于MATLAB应用(一)关联分析

客观世界的很多实际问题,其内部的结构、参数以及特征并未全部被人们了解, 人们不可能象研究白箱问题那样将其内部机理研究清楚,只能依据某种思维逻辑与推断 来构造模型。对这类部分信息已知而部分信息未知的系统,我们称之为灰色系统。本系列介绍的方法是从灰色系统的本征灰色出发,研究在信息大量缺乏或紊乱的情况下,如何对实际问题进行分析和解决。

关联分析

1、系统分析

现实问题中我们往往需要对系统进行因素分析,这些因素中哪些对系统来讲是主要的,哪些是次要的,哪些需要发展,哪些需要抑制,哪些是潜在的,哪些是明显的。一般来讲,这些都是我们极为关心的问题。事实上,因素间关联性如何、关联程度如何量化等问题是系统分析的关键和起点。
因素分析的基本方法过去主要采取回归分析等办法。但回归分析的办法有很多欠缺,如要求大量数据、计算量大及可能出现反常情况等。为克服以上 弊病,本节采用关联度分析的办法来做系统分析。
作为一个发展变化的系统,关联分析实际上是动态过程发展态势的量化比较分析。 所谓发展态势比较,也就是系统各时期有关统计数据的几何关系比较。
例如,某地区 1977~1983 年总收入与养猪、养兔收入资料如表1:
在这里插入图片描述根据表 1,做曲线图 1:
图 1    收入数据图
由上图易看出,曲线 A(总收入)与曲线 B(养猪收入)发展趋势比较接近,而与 曲线 C(养兔收入)相差较大,因此可以判断,该地区对总收入影响较直接的是养猪业, 而不是养兔业。
很显然,几何形状越接近,关联程度也就越大。当然,直观分析对于稍微复杂些 的问题则显得难于进行。因此,需要给出一种计算方法来衡量因素间关联程度的大小。

2、数据变换技术

保证建模的质量与系统分析的正确结果,对收集来的原始数据必须进行数据变换和处理,使其消除量纲和具有可比性。
定义 1 设有序列:
x = ( x(1), x(2),…, x(n))
则称映射 f : x → y
f ( x(k )) = y(k ),k = 1,2,…, n
为序列 x 到序列 y 的数据变换。
1)当
在这里插入图片描述
称 f 是初值化变换。
2)当
在这里插入图片描述
称 f 是百分比变换。
3)当
在这里插入图片描述称 f 是倍数变换。
4)当
在这里插入图片描述
其中 x0 为大于零的某个值,称 f 是归一化变换。
5)当
在这里插入图片描述
称 f 是极差最大值化变换。
7)当
在这里插入图片描述
称 f 是区间值化变换。

3、关联分析

选取参考数列
x0 = {x0 (k ) | k = 1,2,L, n} = ( x0 (1), x0 (2),…, x0 (n))
其中 k 表示时刻。假设有 m 个比较数列
xi = {xi (k ) | k = 1,2,L, n} = ( xi (1), xi (2),…, xi (n)) , i = 1,2,…, m
则称
在这里插入图片描述为比较数列 xi 对参考数列 x0 在 k 时刻的关联系数,其中 ρ ∈[0,1] 为分辨系数,一般来讲,分辨系数 ρ 越大,分辨率越大; ρ 越小,分辨率越小。

关联度是把各个时刻的关联系数集中为一个平均值,亦即把过于 分散的信息集中处理。利用关联度这个概念,我们可以对各种问题进行因素分析。考虑 下面的问题
通过对某健将级女子铅球运动员的跟踪调查,获得其 1982 年至 1986 年每年 最好成绩及 16 项专项素质和身体素质的时间序列资料,见表 2,试对此铅球运动员的 专项成绩进行因素分析。
在这里插入图片描述
在计算关联度之前,我们需对表 2 的各个数列做初始化处 理。一般来讲,实际问题中的不同数列往往具有不同的量纲,而我们在计算关联系数时, 要求量纲要相同。因此,需首先对各种数据进行无量纲化。另外,为了易于比较,要求所有数列有公共的交点。
这样,我们可对表 2 中的 17 个数列进行初始化处理。注意,对于前 15 个数列, 随着时间的增加,数值的增加意味着运动水平的进步,而对后 2 个数列来讲,随着时间的增加,数值(秒数)的减少却意味着运动水平的进步。
依照问题的要求,我们自然选取铅球运动员专项成绩作为参考数列,将表 2 中的各个数列的初始化数列代入(1)及(2)式,易算出各数列的关联度如下表(这里ρ = 0.5 )。
在这里插入图片描述
计算的 MATLAB 程序如下:

clc,clear
load x.txt	%把原始数据存放在纯文本文件 x.txt 中,其中把数据的"替换替换成.
for i=1:15
x(i,:)=x(i,:)/x(i,1);	%标准化数据
end
for i=16:17
x(i,:)=x(i,1)./x(i,:);	%标准化数据
end data=x;
n=size(data,2); %求矩阵的列数,即观测时刻的个数
ck=data(1,:);	%提出参考数列 bj=data(2:end,:); %提出比较数列 m2=size(bj,1); %求比较数列的个数
for j=1:m2
t(j,:)=bj(j,:)-ck;
end
mn=min(min(abs(t')));	%求最小差
mx=max(max(abs(t')));	%求最大差 rho=0.5;	%分辨系数设置 ksi=(mn+rho*mx)./(abs(t)+rho*mx);	%求关联系数 r=sum(ksi')/n	%求关联度
[rs,rind]=sort(r,'descend')	%对关联度进行排序

由表 3 易看出,影响铅球专项成绩的前八项主要因素依次为全蹲、3kg 滑步、高翻、4kg 原地、挺举、立定跳远、30 米起跑、100 米成绩。因此,在训练中应着重考虑安排 这八项指标的练习。这样可减少训练的盲目性,提高训练效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值