ImageVerifierCode 换一换
格式:DOC , 页数:25 ,大小:429.01KB ,
资源ID:4333785      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4333785.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(灰色关联度matlab源程序.doc)为本站上传会员【人****来】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

灰色关联度matlab源程序.doc

1、灰色关联度matlab源程序(完整版) 最 近几天一直在写算法,其实网上可以下到这些算法的源程序的,但是为了搞懂,搞清楚,还是自己一个一个的看了,写了,作为自身的积累,而且自己的的矩阵计算类库也迅速得到补充,以后关于算法方面,基本的矩阵运算不用再重复写了,挺好的,是种积累,下面把灰关联的matlab程序与大家分享。 灰色关联度分析法是将研究对象及影响因素的因子值视为一条线上的点,与待识别对象及影响因素的因子值所绘制的曲线进行比较,比较它们之间的贴近度,并分别量化,计算出研究对象与待识别对象各影响因素之间的贴近程度的关联度,通过比较各关联度的大小来判断待识别对象对研究对象的影响程度。 简

2、言之,灰色关联度分析的意义是指在系统发展过程中,如果两个因素变化的态势是一致的,即同步变化程度较高,则可以认为两者关联较大;反之,则两者关联度较小。因此,灰色关联度分析对于一个系统发展变化态势提供了量化的度量,非常适合动态(Dynamic)的历程分析。灰色关联度可分成“局部性灰色关联度”与“整体性灰色关联度”两类。主要的差别在于局部性灰色关联度有一参考序列,而整体性灰色关联度是任一序列均可为参考序列。关联度分析是基于灰色系统的灰色过程, 进行因素间时间序列的比较来确定哪些是影响大的主导因素, 是一种动态过程的研究。 关联度计算的预处理,一般初值化或者均值化,根据我的实际需要,本程序中使用的是

3、比较序列与参考序列组成的矩阵除以参考序列的列均值等到的,当然也可以是其他方法。 %注意:由于需要,均值化方法采用各组值除以样本的各列平均值 clear;clc; yangben=[ 47.924375 25.168125 827.4105438 330.08875 1045.164375 261.374375 16.3372 6.62 940.2824 709.2752 962.1284 84.874 55.69666667 30.80333333 885.21 275.8066667 1052.42 435.81 ]; %样本数据 fangzhen=[ 36.27 14.5

4、9 836.15 420.41 1011.83 189.54 64.73 35.63 755.45 331.32 978.5 257.87 42.44 23.07 846 348.05 1025.4 296.69 59.34 39.7 794.31 334.63 1016.4 317.27 52.91 17.14 821.79 306.92 1141.94 122.04 4.21 4.86 1815.52 2584.68 963.61 0.00 6.01 2.43 1791.61 2338.17 1278.08 30.87 3.01 1.58 1220.54 956

5、14 1244.75 3.91 25.65 7.42 790.17 328.88 1026.01 92.82 115.80 27 926.5 350.93 1079.49 544.38 12.63 8.75 1055.50 1379.00 875.10 1.65 ]; %待判数据 [rows,cols]=size(fangzhen); p=0.5;    %分辨系数 [m,n]=size(yangben);       R=[]; for irow=1:rows      yy=fangzhen(irow,:);      data=[yy;yangben];

6、      data_gyh1=mean(yangben)      for i=1:m+1          for j=1:n              data_gyh(i,j)=data(i,j)/data_gyh1(j);          end      end           for i=2:m+1          for j=1:n              Dij(i-1,j)=abs(data_gyh(1,j)-data_gyh(i,j));          end      end      Dijmax=max(max(Dij));

7、      Dijmin=min(min(Dij));           for i=1:m          for j=1:n              Lij(i,j)=(Dijmin+p*Dijmax)/(Dij(i,j)+p*Dijmax);          end      end           LijRowSum=sum(Lij');           for i=1:m          Rij(i)=LijRowSum(i)/n;      end      R=[R;Rij]; end R matlab求灰色

8、关联度矩阵源代码 2010-12-11 22:57 function greyrelationaldegree(X,c) %GRAYRELATIONALDEGREE this function is used for calculating the gery %relation between squence %rememeber that the first column of the input matrix is the desicion %attribution squences.what we want to calculate is the grey ralationa

9、l degree between %it and other attributions %X is the squence matrix, c is the parameter used in the function %in most of the time, the value of c is 0.5 firstrow = X(1,:); reci_firstrow = 1./firstrow; reci_convert = diag(reci_firstrow); initialMIRROR = X*reci_convert;% find the initial value

10、 mirror of the sequce matrix A = initialMIRROR' [nrow,ncolumn] = size(A); for (i=2:nrow)     C = A(i,:)-A(1,:)     D=abs(C);     eval(['B' num2str(i) '=D']);     amax = max(eval(['B' num2str(i)]))     amin = min(eval(['B' num2str(i)]))     maxarray(i-1)=amax     minarray(i-1)=amin end %fi

11、nd the difference squence and the max value and min value of each squence maxmax = max(maxarray) minmin = min(minarray) for(i=2:nrow)     for(j=1:ncolumn)         eval(['greyrelationdegree' num2str(i) '(j)=(minmin+c*maxmax)/(B' num2str(i) '(j)+c*maxmax)'])     end end % calculate the greyrala

12、tional degree of each data for(i=2:nrow)    eval(['greyrelatioanaldegree_value' num2str(i) '= mean (greyrelationdegree' num2str(i) ')'  ])    end 基于matlab灰色关联度计算的实现 2006年07月28日 星期五 上午 11:06 function r=incident_degree(x0,x1) %compute the incident degree for grey model. %Designed by NIXIUH

13、UI,Dalian Fisher University. %17 August,2004,Last modified by NXH at 21 August,2004        %数据初值化处理 x0_initial=x0./x0(1); temp=size(x1); b=repmat(x1(:,1),[1 temp(2)]); x1_initial=x1./b; %分辨系数选择 K=0.1; disp('The grey interconnect degree is: '); x0_ext=repmat(x0_initial,[

14、temp(1) 1]); contrast_mat=abs(x0_ext-x1_initial); delta_min=min(min(contrast_mat));%delta_min在数据初值化后实际为零 delta_max=max(max(contrast_mat)); a=delta_min+K*delta_max; incidence_coefficient=a./(contrast_mat+K*delta_max);%得到关联系数 r=(sum(incidence_coefficient'))'/temp(2);      %得到邓氏面积关联度 我

15、们根据图1的步骤和图2的数据进行编程实现,程序如下: %清除内存空间等 clear; close all; clc; %载入源数据    %其实这里可以载入execl表格的 n=15;                       %参与评价的人数 m=4;                        %参与评价的指标个数 X_0=zeros(n,m);             %          数据矩阵 X_2=zeros(n,m);             %偏差结果的求取矩阵 X_3=zeros(n,m);             %  相关系数计算矩阵 a1_

16、0=[13 18 17 18 17 17 18 17 13 17 18 13 18 13 18]; a2_0=[18 18 17 17 18 13 17 13 18 13 17 13 13 17 17]; a3_0=[48.67 43.33 43.56 41.89 39.47 43.44 37.97 41.14 39.67 39.83 34.11 40.58 34.19 30.75 21.22]; a4_0=[10 10.7 3 5.4 5.4 0.7 4.2 0.5 9.3 0.85 2.9 5.45 4.2 2.7 6];    %指标数 X_1=[a1_0',a2_0',a3_0

17、',a4_0'];   %最后使用到的数据矩阵 %1 寻找参考列 x0=[max(a1_0),max(a2_0),max(a3_0),max(a4_0)];   %取每列的最大值(指标的最大值) %2 计算偏差结果 i=1; while(i~=m+1)                                   %为什么这个地方会出问题呢     for j=1:1:n         X_2(j,i)=abs(X_1(j,i)-x0(i));     end;     i=i+1; end %3 确定偏差的最值 error_min=min(min(X_2));

18、 error_max=max(max(X_2)); %4 计算相关系数 i=1; p=0.5; while(i~=m+1)     for j=1:1:n         X_3(j,i)=(error_min+p*error_max)/(X_2(j,i)+p*error_max);     end;     i=i+1; end %X_3     %可以在此观察关联矩阵 %5 计算各个学生的关连序 a=zeros(1,n); for j=1:1:n     for i=1:1:m      a(j)=a(j)+X_3(j,i);   %%%%其实可以直接用su

19、m     end;     a(j)=a(j)/m;           %%%%%%%%%可以改进%%%%%%%%%% 1 2 3 下一页 % end %a      %在此可以观测各个学生的序 %改进:如果各个指标的所占权重不一样的话,可以添加相应的权系数 %6 排序 b=a'; [c,s]=sort(b); for i=1:1:n     d(i)=i; end d=d'; result=[d b c s] %7 将结果显示出来 figure(1); plot(a); figure(2) bar(a);                  %柱

20、状图     最后所得到的结果如图3到图5所示。   图3 程序运行结果 图4 曲线图 图5 柱状图     根据以上三图我们就可以判断出每个学生序列与参考序列(最大值)之间的关系,与最大值的关系越密切,那么其关联度越大。 根据以上的启示,我用matlab灰度关联分析的想法是: 1、参考序列我可以选择已知属于某一类神经元的统计数据,我选择平均值。 2、加入一个未知类的数据,与已有类中的数据一起计算他们与平均值的关联度。 3、计算出来的关联度我们可以有多种处理思路,如果未知类的关联度不是排在最末,可以认为它属于这一类,或者未知类的关联度大于计算出来的关联度平均

21、值,我们可以认为它属于这一类。     使用关联度进行分类,计算出来的关联度如何使用还是个问题,这个东西是我琢磨出来的,我还没有见到过相关的文献,估计应该可以用,期望以后的专家学者钻研了。 参考文献: [1] 郝海燕,王斌.大学生综合素质测评的灰色关联分析法[J].承德石油高等专科学校学报,2009,11(2):57-59.   上一页 1 2 3 请教一下用MATLAB实现灰色关联分析的程序 初始矩阵为x=[1.14 1.49 1.69 2.12 2.43 4.32 5.92 6.07 7.85;3.30 3.47 3.61 3.80 4.00 4.19 4.42

22、 4.61 4.80;6.00 6.00 6.00 7.50 7.50 7.50 9.00 9.00 9.00;1.20 1.20 1.80 1.80 1.80 2.40 2.70 3.60 4.00;4.87 5.89 6.76 7.97 8.84 10.05 11.31 12.25 11.64] 我写的程序如下: x1=[1.14 1.49 1.69 2.12 2.43 4.32 5.92 6.07 7.85;3.30 3.47 3.61 3.80 4.00 4.19 4.42 4.61 4.80;6.00 6.00 6.00 7.50 7.50 7.50 9.00 9.00 9.

23、00;1.20 1.20 1.80 1.80 1.80 2.40 2.70 3.60 4.00;4.87 5.89 6.76 7.97 8.84 10.05 11.31 12.25 11.64]%原始数据5行9列 x1=x for i=1:5 for j=1:9 x(i,j)=x(i,j)/x1(1,j) end end x1=x for i=1:5 for j=1:9 x(i,j)=abs(x(i,j)-x1(i,1)) end end max=x(1,1) min=x(1,1) for i=1:5 for j=1:9

24、if x(i,j)>=max max=x(i,j) end end end for i=1:5 for j=1:9 if x(i,j)<=min min=x(i,j) end end end k=0.5 %分辨系数取值 l=(min+k*max)./(x+k*max)%求关联系数矩阵 但是运算错误!!!! 请教一下高手 问题补充: 楼下回答的不对,那样虽不会运行错误,但得不到正确的答案 怎么没人再给我回答啊555555555 其他回答 共1条 4.00;4.87 5.89 6.76 7.97 8.84

25、 10.05 11.31 12.25 11.64]%原始数据5行9列 x1=x %有错,应该为 x=x1 for i=1:5 灰色关联matlab程序 浏览次数:170次悬赏分:5 | 提问时间:2011-5-25 19:40 | 提问者:zjon111 clear;clc; yangben=[ 12409 15296 18743 22399 26451 ]; %样本数据 fangzhen=[ 216314 265810 314045 340903 397983 1.5 4.8 5.9 -0.7 3.3 1184 1204 1113 1102 1

26、168 11759 13786 15781 17175 19109 38760 51322 61330 68518 83080 109998 137324 172828 224599 278140 79145 93572 114830 132678 156998 161587 172534 217885 260772 303302 ]; %待判数据 [rows,cols]=size(fangzhen); p=0.5; %分辨系数 [m,n]=size(yangben); R=[]; for irow=1:rows yy=fangz

27、hen(irow,:); data=[yy;yangben]; data_gyh1=mean(yangben) for i=1:m+1 for j=1:n data_gyh(i,j)=data(i,j)/data_gyh1(j); end end for i=2:m+1 for j=1:n Dij(i-1,j)=abs(data_gyh(1,j)-data_gyh(i,j)); end

28、 end Dijmax=max(max(Dij)); Dijmin=min(min(Dij)); for i=1:m for j=1:n Lij(i,j)=(Dijmin+p*Dijmax)/(Dij(i,j)+p*Dijmax); end end LijRowSum=sum(Lij'); for i=1:m Rij(i)=LijRowSum(i)/n; end

29、 R=[R;Rij]; end R 哪里出错了,求高手解答,顺便求结果分析 推荐答案 data_gyh1=mean(yangben)得到的是一个数, 而data_gyh(i,j)=data(i,j)/data_gyh1(j)中data_gyh1(j)你把data_gyh1作为一个数组使用的,所以会出错。 追问 怎么改合适呢 回答 其实我不懂灰色关联是什么,所以可能在这个上边帮不了什么忙,你看看灰色关联的原理吧, data_gyh1=mean(yangben)这一句得到的data_gyh1就是一个定值, 而data_gyh(i,j)=data(i,j)/data

30、gyh1(j)中需要用到的是什么值呢,你从这方面下手考虑吧。 刚搜了一下,看到了跟你这个类似的源程序。。。。他的样本数据是3*6的,所以 data_gyh1=mean(yangben)得到是yangben的每一列的均值,而你的yangben是一行的,所以应该直接让data_gyh1=yangben。个人意见,仅供参考。 参考资料: 基于matlab的灰度关联分析法 (2010-09-23 10:12:42) 标签: matlab 灰度关联 分类 分类: matlab相关     做了四天的研究生数学建模,感觉做的很一般,应该是没有很好的深入理解题意,而

31、且对于神经元的背景信息不是很清楚,导致了后面的东西没有时间处理,最后一天的熬夜,终于把论文给赶了出来,第二天从早上十点一觉睡到晚上六点半。     关于建模神经元这题主要是分类和聚类问题,前者是类别已知,然后判断测试样本是否为某一类。后者是无监督学习,即么有类别信息和其他先验知识,一般要求满足最大组内相似性和最小组间相似性。我想到了上学期给同学做的一个使用灰度关联分析法进行大学生综合素质评价的东西,下面主要讲一下那个东西是怎么实现的。     多指标综合测评主要有三大类方法:常规数学方法、模糊数学方法、多元统计分析方法。灰色关联分析是灰色系统理论中的一个分支,其对数据的要求不是很严格,不要

32、求数据分布具有特殊规律。下面我按照参考文献1中的内容把综合素质评价的程序给实现。下面是灰度关联法进行综合评价的步骤: 图1 灰度关联分析法进行综合测评的步骤 图2 所使用的综合评价表     我们根据图1的步骤和图2的数据进行编程实现,程序如下: %清除内存空间等 clear; close all; clc; %载入源数据    %其实这里可以载入execl表格的 n=15;                       %参与评价的人数 m=4;                        %参与评价的指标个数 X_0=zeros(n,m);          

33、   %          数据矩阵 X_2=zeros(n,m);             %偏差结果的求取矩阵 X_3=zeros(n,m);             %  相关系数计算矩阵 a1_0=[13 18 17 18 17 17 18 17 13 17 18 13 18 13 18]; a2_0=[18 18 17 17 18 13 17 13 18 13 17 13 13 17 17]; a3_0=[48.67 43.33 43.56 41.89 39.47 43.44 37.97 41.14 39.67 39.83 34.11 40.58 34.19 30.75 2

34、1.22]; a4_0=[10 10.7 3 5.4 5.4 0.7 4.2 0.5 9.3 0.85 2.9 5.45 4.2 2.7 6];    %指标数 X_1=[a1_0',a2_0',a3_0',a4_0'];   %最后使用到的数据矩阵 %1 寻找参考列 x0=[max(a1_0),max(a2_0),max(a3_0),max(a4_0)];   %取每列的最大值(指标的最大值) %2 计算偏差结果 i=1; while(i~=m+1)                                   %为什么这个地方会出问题呢     for j=1:1:n

35、         X_2(j,i)=abs(X_1(j,i)-x0(i));     end;     i=i+1; end %3 确定偏差的最值 error_min=min(min(X_2)); error_max=max(max(X_2)); %4 计算相关系数 i=1; p=0.5; while(i~=m+1)     for j=1:1:n         X_3(j,i)=(error_min+p*error_max)/(X_2(j,i)+p*error_max);     end;     i=i+1; end %X_3     %可以在此观察关联

36、矩阵 %5 计算各个学生的关连序 a=zeros(1,n); for j=1:1:n     for i=1:1:m      a(j)=a(j)+X_3(j,i);   %%%%其实可以直接用sum     end;     a(j)=a(j)/m;           %%%%%%%%%可以改进%%%%%%%%%%% end %a      %在此可以观测各个学生的序 %改进:如果各个指标的所占权重不一样的话,可以添加相应的权系数 %6 排序 b=a'; [c,s]=sort(b); for i=1:1:n     d(i)=i; end d=d'; r

37、esult=[d b c s] %7 将结果显示出来 figure(1); plot(a); figure(2) bar(a);                  %柱状图     最后所得到的结果如图3到图5所示。 图3 程序运行结果 图4 曲线图 图5 柱状图 根据以上三图我们就可以判断出每个学生序列与参考序列(最大值)之间的关系,与最大值的关系越密切,那么其关联度越大。 灰色系统分析方法针对不同问题性质有几种不同做法,灰色关联度分析(Grey Relational Analysis)是其中的一种。基本上灰色关联度分析是依据各因素数列曲线形状的接近

38、程度做发展态势的分析。灰色系统理论提出了对各子系统进行灰色关联度分析的概念,意图透过一定的方法,去寻求系统中各子系统(或因素)之间的数值关系。     根据以上的启示,我进行分类的想法是:1、参考序列我可以选择已知属于某一类神经元的统计数据,我选择平均值。2、加入一个未知类的数据,与已有类中的数据一起计算他们与平均值的关联度。3、计算出来的关联度我们可以有多种处理思路,如果未知类的关联度不是排在最末,可以认为它属于这一类,或者未知类的关联度大于计算出来的关联度平均值,我们可以认为它属于这一类。     使用关联度进行分类,计算出来的关联度如何使用还是个问题,这个东西是我琢磨出来的,我还没有见到过相关的文献,估计应该可以用,期望以后的专家学者钻研了。   参考文献 [1] 郝海燕,王斌.大学生综合素质测评的灰色关联分析法[J].承德石油高等专科学校学报,2009,11(2):57-59.   2010年09月23日上午于njust 10系 310房间   CopyRight:版权所有若需转载或使用请联系作者 Email:dingqian12345@

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服