matlab灰色關(guān)聯(lián)度_第1頁(yè)
matlab灰色關(guān)聯(lián)度_第2頁(yè)
matlab灰色關(guān)聯(lián)度_第3頁(yè)
matlab灰色關(guān)聯(lián)度_第4頁(yè)
matlab灰色關(guān)聯(lián)度_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、灰色關(guān)聯(lián)度matlab源程序最近幾天一直在寫(xiě)算法,其實(shí)網(wǎng)上可以下到這些算法的源程序的,但是為了搞懂,搞清楚,還是自己一個(gè) 一個(gè)的看了,寫(xiě)了,作為自身的積累,而且自己的的矩陣計(jì)算類(lèi)庫(kù)也迅速得到補(bǔ)充,以后關(guān)于算法方面, 基本的矩陣運(yùn)算不用再重復(fù)寫(xiě)了,挺好的,是種積累,下面把灰關(guān)聯(lián)的matlab程序與大家分享?;疑P(guān)聯(lián)度分析法是將研究對(duì)象及影響因素的因子值視為一條線上的點(diǎn),與待識(shí)別對(duì)象及影響因素的因子值所繪制的曲線進(jìn)行比較,比較它們之間的貼近度,并分別量化,計(jì)算岀研究對(duì)象與待識(shí)別對(duì)象各影響因素之 間的貼近程度的關(guān)聯(lián)度,通過(guò)比較各關(guān)聯(lián)度的大小來(lái)判斷待識(shí)另U對(duì)象對(duì)研究對(duì)象的影響程度。關(guān)聯(lián)度計(jì)算的預(yù)處理,

2、一般初值化或者均值化,根據(jù)我的實(shí)際需要,本程序中使用的是比較序列與參考序列組成的矩陣除以參考序列的列均值等到的,當(dāng)然也可以是其他方法。%注意:由于需要,均值化方法采用各組值除以樣本的各列平均值clear;clc;yangben=47.924375 25.168125 827.4105438 330.08875 1045.164375 261.37437516.3372 6.62 940.2824 709.2752 962.1284 84.87455.69666667 30.80333333 885.21 275.8066667 1052.42 435.81;%樣本數(shù)據(jù)fangzhen=36.2

3、7 14.59 836.15 420.41 1011.83 189.5464.73 35.63 755.45 331.32 978.5 257.8742.44 23.07 846 348.05 1025.4 296.6959.34 39.7 794.31 334.63 1016.4 317.2752.91 17.14 821.79 306.92 1141.94 122.044.21 4.86 1815.52 2584.68 963.61 0.006.01 2.43 1791.61 2338.17 1278.08 30.873.01 1.58 1220.54 956.14 1244.75 3.9

4、125.65 7.42 790.17 328.88 1026.01 92.82115.80 27 926.5 350.93 1079.49 544.3812.63 8.75 1055.50 1379.00 875.10 1.65;%待判數(shù)據(jù)rows,cols=size(fangzhen);p=0.5;%分辨系數(shù)m,n=size(yangben);R=【; for irow=1:rowsyy=fangzhen(irow,:);data=yy;yangben;data_gyh1=mean(yangben)for i=1:m+1forj=1:ndata_gyh(i,j)=data(i,j)/data

5、_gyh1(j);endendfor i=2:m+1forj=1:nDij(i-1,j)=abs(data_gyh(1,j)-data_gyh(i,j);endendDijmax=max(max(Dij);Dijmin=min(min(Dij);for i=1:mforj=1:nLij(i,j)=(Dijmin+p*Dijmax)/(Dij(i,j)+p*Dijmax);endendLijRowSum=sum(L);for i=1:mRij(i)=LijRowSum(i)/n;endR=R;Rij;endRmatlab求灰色關(guān)聯(lián)度矩陣源代碼2010-12-11 22:57function gr

6、eyrelati on aldegree(X,c)%GRAYRELATIONALDEGREE this fun ctio n is used for calculat ing the gery%relati on betwee n sque nee%rememeber that the first colu mn of the in put matrix is the desici on%attributi on sque nces.what we want to calculate is the grey ralati onal degree betwee n%it and other at

7、tributions%X is the squence matrix, c is the parameter used in the function%in most of the time, the value of c is 0.5firstrow = X(1,:);reci_firstrow = 1./firstrow;reci_c onvert = diag(reci_firstrow);in itialMIRROR = X*reci_c on vert;%find the in itial value mirror of the sequce matrixA = in itialMI

8、RROR'n row, ncolu mn = size(A);for (i=2:n row)C = A(i,:)-A(1,:)D=abs(C);eval('B' nu m2str(i) '=D');amax = max(eval('B' num2str(i)amin = min(eval('B' num2str(i)maxarray(i-1)=amaxmin array(i-1)=am inend %find the differe nce sque nce and the max value and min value

9、of each sque ncemaxmax = max(maxarray)mi nmin = min( mi narray)for(i=2: nrow)for(j=1: ncolu mn)eval('greyrelati on degree' nu m2str(i) '(j)=(mi nmi n+c*maxmax)/(B'nu m2str(i) '(j)+c*maxmax)')endend % calculate the greyralati onal degree of each datafor(i=2: nrow)eval('gre

10、yrelatioa naldegree_value' nu m2str(i)'= mean (greyrelati on degree'num2str(i)')' end)基于matlab灰色關(guān)聯(lián)度計(jì)算的實(shí)現(xiàn)2006年07月28日 星期五 上午11:06function r=in cide nt_degree(x0,x1)%compute the in cide nt degree for grey model.%Designed by NIXIUHUI,Dalian Fisher University.%17 August,2004,Last modi

11、fied by NXH at 21 August,2004%數(shù)據(jù)初值化處理x0_i ni tial=x0./x0(1);temp=size(x1);b=repmat(x1(:,1),1 temp(2);x1ni tial=x1./b;%分辨系數(shù)選擇K=0.1;disp('The grey in terc onnect degree is:');xO_ext=repmat(xO_i nitial,temp(1) 1);con trast_mat=abs(x0_ext-x1_ in itial);delta_mi n=mi n(mi n( co ntrast_mat);%delta

12、_min在數(shù)據(jù)初值化后實(shí)際為零delta_max=max(max(c on trast_mat);a=delta_ min+K*delta_max;in cide nce_coefficie nt=a./(c on trast_mat+K*delta_max);%得至 U關(guān)聯(lián)系數(shù)r=(sum(i ncide nce_coefficie nt')'/temp(2);%得到鄧氏面積關(guān)聯(lián)度我們根據(jù)圖1的步驟和圖2的數(shù)據(jù)進(jìn)行編程實(shí)現(xiàn),程序如下:%清除內(nèi)存空間等clear;close all;clc;%載入源數(shù)據(jù)% 其實(shí)這里可以載入 execl 表格的n=15;% 參與評(píng)價(jià)的人數(shù)m=4;

13、% 參與評(píng)價(jià)的指標(biāo)個(gè)數(shù)X_0=zeros(n,m);% 數(shù)據(jù)矩陣X_2=zeros(n,m);% 偏差結(jié)果的求取矩陣X_3=zeros(n,m);% 相關(guān)系數(shù)計(jì)算矩陣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.5834.19 30.75 21.22;a4_0=10 10.7 3 5.4 5.4

14、0.7 4.2 0.5 9.3 0.85 2.9 5.45 4.2 2.7 6;% 指標(biāo)數(shù)X_1=a1_0',a2_0',a3_0',a4_0' % 最后使用到的數(shù)據(jù)矩陣%1 尋找參考列x0=max(a1_0),max(a2_0),max(a3_0),max(a4_0);% 取每列的最大值(指標(biāo)的最大值)%2 計(jì)算偏差結(jié)果i=1;while(i=m+1)% 為什么這個(gè)地方會(huì)出問(wèn)題呢for j=1:1:nX_2(j,i)=abs(X_1(j,i)-x0(i);end;i=i+1;end%3 確定偏差的最值error_min=min(min(X_2);error_m

15、ax=max(max(X_2);%4 計(jì)算相關(guān)系數(shù)i=1;p=0.5;while(i=m+1)for j=1:1:nX_3(j,i)=(error_min+p*error_max)/(X_2(j,i)+p*error_max);end;i=i+1;end%X_3% 可以在此觀察關(guān)聯(lián)矩陣%5 計(jì)算各個(gè)學(xué)生的關(guān)連序a=zeros(1,n);for j=1:1:nfor i=1:1:ma(j)=a(j)+X_3(j,i);% 其實(shí)可以直接用 suma(j)=a(j)/m; % 可以改進(jìn) %1 2 3 下一頁(yè)%end%a% 在此可以觀測(cè)各個(gè)學(xué)生的序%改進(jìn) :如果各個(gè)指標(biāo)的所占權(quán)重不一樣的話(huà),可以添加相

16、應(yīng)的權(quán)系數(shù)%6 排序b=a'c,s=sort(b);for i=1:1:nd(i)=i;endd=d'result=d b c s%7 將結(jié)果顯示出來(lái)figure(1);plot(a);figure(2)bar(a);% 柱狀圖使用關(guān)聯(lián)度進(jìn)行分類(lèi),計(jì)算出來(lái)的關(guān)聯(lián)度如何使用還是個(gè)問(wèn)題,這個(gè)東西圖 3 程序運(yùn)行結(jié)果圖 4 曲線圖圖 5 柱狀圖根據(jù)以上三圖我們就可以判斷出每個(gè)學(xué)生序列與參考序列(最大值)之間的關(guān)系,與最大值的關(guān)系越密切,那么其關(guān)聯(lián)度越大。根據(jù)以上的啟示,我用 matlab 灰度關(guān)聯(lián)分析的想法是:1、參考序列我可以選擇已知屬于某一類(lèi)神經(jīng)元的統(tǒng)計(jì)數(shù)據(jù),我選擇平均值。2、加

17、入一個(gè)未知類(lèi)的數(shù)據(jù),與已有類(lèi)中的數(shù)據(jù)一起計(jì)算他們與平均值的關(guān)聯(lián)度。3、計(jì)算出來(lái)的關(guān)聯(lián)度我們可以有多種處理思路,如果未知類(lèi)的關(guān)聯(lián)度不是排 在最末,可以認(rèn)為它屬于這一類(lèi),或者未知類(lèi)的關(guān)聯(lián)度大于計(jì)算出來(lái)的關(guān)聯(lián)度平均值,我們可以認(rèn)為它屬于這一類(lèi)。是我琢磨出來(lái)的,我還沒(méi)有見(jiàn)到過(guò)相關(guān)的文獻(xiàn),估計(jì)應(yīng)該可以用,期望以后的專(zhuān)家 學(xué)者鉆研了。參考文獻(xiàn):1郝海燕,王斌.大學(xué)生綜合素質(zhì)測(cè)評(píng)的灰色關(guān)聯(lián)分析法J.承德石油高等專(zhuān)科學(xué)校學(xué)報(bào),2009,11(2):57-59.上一頁(yè)1 2 3請(qǐng)教一下用MATLAB實(shí)現(xiàn)灰色關(guān)聯(lián)分析的程序初始矩陣為 x=1.14 1.49 1.69 2.12 2.43 4.32 5.92 6.0

18、7 7.85;3.30 3.47 3.613.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.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我寫(xiě)的程序如下: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

19、6.00 7.50 7.50 7.50 9.00 9.00 9.00;1.20 1.201.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%原始數(shù)據(jù)5行9列x1=xfor i=1:5for j=1:9x(i,j)=x(i,j)/x1(1,j)endendx1=xfor i=1:5for j=1:9x(i,j)=abs(x(i,j)-x1(i,1)endendmax=x(1,1)mi n=x(1,1)for i=1:5for j=1:9if x(i,j)>=maxmax=x(

20、i,j)endendendfor i=1:5for j=1:9if x(i,j)<=minmi n=x(i,j)endendendk=0.5 %分辨系數(shù)取值l=(min+k*max)./(x+k*max)% 求關(guān)聯(lián)系數(shù)矩陣但是運(yùn)算錯(cuò)誤!!!請(qǐng)教一下高手問(wèn)題補(bǔ)充:樓下回答的不對(duì),那樣雖不會(huì)運(yùn)行錯(cuò)誤,但得不到正確的答案怎么沒(méi)人再給我回答啊555555555其他回答共1條4.00;4.87 5.89 6.76 7.97 8.84 10.05 11.31 12.25 11.64%原始數(shù)據(jù) 5 行 9 列x1=x %有錯(cuò),應(yīng)該為 x=x1 for i=1:5灰色關(guān)聯(lián)matlab程序?yàn)g覽次數(shù):170

21、次懸賞分:5 |提問(wèn)時(shí)間:2011-5-25 19:40 |提問(wèn)者:zjon111 clear;clc;yangben=12409 15296 18743 22399 26451;%樣本數(shù)據(jù)fan gzhe n=216314 265810 314045 340903 3979831.5 4.8 5.9 -0.7 3.31184 1204 1113 1102 116811759 13786 15781 17175 1910938760 51322 61330 68518 83080109998 137324 172828 224599 27814079145 93572 114830 13267

22、8 156998161587 172534 217885 260772 303302; %待判數(shù)據(jù) rows,cols=size(fangzhen);p=0.5;%分辨系數(shù)m,n=size(yangben);R=;for irow=1:rows yy=fangzhen(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 endfor i=2:m+1for j=1:n Dij(i-1,j)=abs(data_gyh(1,j

23、)-data_gyh(i,j);end end Dijmax=max(max(Dij); Dijmin=min(min(Dij);for i=1:mfor j=1:n Lij(i,j)=(Dijmin+p*Dijmax)/(Dij(i,j)+p*Dijmax); end endLijRowSum=sum(Lij');for i=1:mRij(i)=LijRowSum(i)/n;end R=R;Rij;endR 哪里出錯(cuò)了,求高手解答,順便求結(jié)果分析推薦答案data_gyh1=mean(yangben) 得到的是一個(gè)數(shù),而 data_gyh(i,j)=data(i,j)/data_gyh

24、1(j) 中 data_gyh1(j) 你把 data_gyh1 作為一個(gè) 數(shù)組使用的,所以會(huì)出錯(cuò)。追問(wèn)怎么改合適呢回答其實(shí)我不懂灰色關(guān)聯(lián)是什么, 所以可能在這個(gè)上邊幫不了什么忙, 你看看灰色關(guān) 聯(lián)的原理吧,data_gyh1=mean(yangben) 這一句得到的 data_gyh1 就是一個(gè)定值, 而 data_gyh(i,j)=data(i,j)/data_gyh1(j) 中需要用到的是什么值呢,你從這方面下 手考慮吧。剛搜了一下,看到了跟你這個(gè)類(lèi)似的源程序。他的樣本數(shù)據(jù)是 3*6 的,所 以data_gyh1=mean(yangben) 得到是 yangben 的每一列的均值,而你的

25、 yangben 是一行的,所以應(yīng)該直接讓 data_gyh1=yangben 。個(gè)人意見(jiàn),僅供參考。參考資料: 基于 matlab 的灰度關(guān)聯(lián)分析法(2010-09-23 10:12:42)標(biāo)簽:分類(lèi): matlab 相關(guān)matlab灰度關(guān)聯(lián)分類(lèi)做了四天的研究生數(shù)學(xué)建模,感覺(jué)做的很一般,應(yīng)該是沒(méi)有很好的深入 理解題意, 而且對(duì)于神經(jīng)元的背景信息不是很清楚, 導(dǎo)致了后面的東西沒(méi)有時(shí)間 處理,最后一天的熬夜, 終于把論文給趕了出來(lái), 第二天從早上十點(diǎn)一覺(jué)睡到晚 上六點(diǎn)半。關(guān)于建模神經(jīng)元這題主要是分類(lèi)和聚類(lèi)問(wèn)題,前者是類(lèi)別已知,然后判 斷測(cè)試樣本是否為某一類(lèi)。 后者是無(wú)監(jiān)督學(xué)習(xí), 即么有類(lèi)別信息和

26、其他先驗(yàn)知識(shí), 一般要求滿(mǎn)足最大組內(nèi)相似性和最小組間相似性。 我想到了上學(xué)期給同學(xué)做的一 個(gè)使用灰度關(guān)聯(lián)分析法進(jìn)行大學(xué)生綜合素質(zhì)評(píng)價(jià)的東西, 下面主要講一下那個(gè)東 西是怎么實(shí)現(xiàn)的。多指標(biāo)綜合測(cè)評(píng)主要有三大類(lèi)方法:常規(guī)數(shù)學(xué)方法、模糊數(shù)學(xué)方法、多 元統(tǒng)計(jì)分析方法。 灰色關(guān)聯(lián)分析是灰色系統(tǒng)理論中的一個(gè)分支, 其對(duì)數(shù)據(jù)的要求 不是很?chē)?yán)格, 不要求數(shù)據(jù)分布具有特殊規(guī)律。 下面我按照參考文獻(xiàn) 1中的內(nèi)容把 綜合素質(zhì)評(píng)價(jià)的程序給實(shí)現(xiàn)。下面是灰度關(guān)聯(lián)法進(jìn)行綜合評(píng)價(jià)的步驟:圖1 灰度關(guān)聯(lián)分析法進(jìn)行綜合測(cè)評(píng)的步驟圖 2 所使用的綜合評(píng)價(jià)表我們根據(jù)圖 1 的步驟和圖 2 的數(shù)據(jù)進(jìn)行編程實(shí)現(xiàn),程序如下:%清除內(nèi)存空間

27、等 clear;close all;clc;%載入源數(shù)據(jù)n=15;m=4;數(shù)%其實(shí)這里可以載入 execl 表格的%參與評(píng)價(jià)的人數(shù)%參與評(píng)價(jià)的指標(biāo)個(gè)X_0=zeros(n,m);X_2=zeros(n,m);X_3=zeros(n,m);% 數(shù)據(jù)矩陣%偏差結(jié)果的求取矩陣% 相關(guān)系數(shù)計(jì)算矩陣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

28、.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; % 指標(biāo)數(shù)X_1=a1_0',a2_0',a3_0',a4_0'%最后使用到的數(shù)據(jù)矩陣%1 尋找參考列x0=max(a1_0),max(a2_0),max(a3_0),max(a4_0);%取每列的最大值(指標(biāo)的最大值)%2 計(jì)算偏差結(jié)果i=1; while(i=m+1) %為什么這個(gè)地方會(huì)出問(wèn)題呢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);

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論