版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、灰色關聯(lián)度matlab源程序(完整版)最近幾天一直在寫算法,其實網(wǎng)上可以下到這些算法的源程序的,但是為了搞懂,搞清楚,還是自己一個一個的看了,寫了,作為自身的積累,而且自己的的矩陣計算類庫也迅速得到補充,以后關于算法方面,基本的矩陣運算不用再重復寫了,挺好的,是種積累,下面把灰關聯(lián)的matlab程序與大家分享。灰色關聯(lián)度分析法是將研究對象及影響因素的因子值視為一條線上的點,與待識別對象及影響因素的因子值所繪制的曲線進行比較,比較它們之間的貼近度,并分別量化,計算出研究對象與待識別對象各影響因素之間的貼近程度的關聯(lián)度,通過比較各關聯(lián)度的大小來判斷待識別對象對研究對象的影響程度。簡言之,灰色關聯(lián)度
2、分析的意義是指在系統(tǒng)發(fā)展過程中,如果兩個因素變化的態(tài)勢是一致的,即同步變化程度較高,則可以認為兩者關聯(lián)較大;反之,則兩者關聯(lián)度較小。因此,灰色關聯(lián)度分析對于一個系統(tǒng)發(fā)展變化態(tài)勢提供了量化的度量,非常適合動態(tài)(Dynamic)的歷程分析?;疑P聯(lián)度可分成“局部性灰色關聯(lián)度”與“整體性灰色關聯(lián)度”兩類。主要的差別在于局部性灰色關聯(lián)度有一參考序列,而整體性灰色關聯(lián)度是任一序列均可為參考序列。關聯(lián)度分析是基于灰色系統(tǒng)的灰色過程, 進行因素間時間序列的比較來確定哪些是影響大的主導因素, 是一種動態(tài)過程的研究。關聯(lián)度計算的預處理,一般初值化或者均值化,根據(jù)我的實際需要,本程序中使用的是比較序列與參考序列組
3、成的矩陣除以參考序列的列均值等到的,當然也可以是其他方法。%注意:由于需要,均值化方法采用各組值除以樣本的各列平均值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.27 14.59 836.15 420.41 1011.83 189.54
4、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.14 1244.75 3.91 25.65 7.42 790.17 328.88 102
5、6.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 ; %待判數(shù)據(jù)rows,cols=size(fangzhen);p=0.5; %分辨系數(shù)m,n=size(yangben); R=;for irow=1:rows yy=fangzhen(irow,:); data=yy;
6、yangben; data_gyh1=mean(yangben) for i=1:m+1 for j=1:n data_gyh(i,j)=data(i,j)/data_gyh1(j);
7、0; end end for i=2:m+1 for j=1:n Dij(i-1,j)=abs(data_gyh(1,j)-data_gyh(i,j); &
8、#160; end end Dijmax=max(max(Dij); Dijmin=min(min(Dij); for i=1:m for j=1:n
9、160; Lij(i,j)=(Dijmin+p*Dijmax)/(Dij(i,j)+p*Dijmax); end end LijRowSum=sum(Lij'); for i=1:m
10、; Rij(i)=LijRowSum(i)/n; end R=R;Rij;endRmatlab求灰色關聯(lián)度矩陣源代碼2010-12-11 22:57function greyrelationaldegree(X,c)%GRAYRELATIONALDEGREE this function is used for calculating the gery%relation between squence%rememebe
11、r that the first column of the input matrix is the desicion%attribution squences.what we want to calculate is the grey ralational 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.5firstrow = X(1,:);reci
12、_firstrow = 1./firstrow;reci_convert = diag(reci_firstrow);initialMIRROR = X*reci_convert;% find the initial value mirror of the sequce matrixA = initialMIRROR'nrow,ncolumn = size(A);for (i=2:nrow) C = A(i,:)-A(1,:) D=abs(C); eval('B'
13、 num2str(i) '=D'); amax = max(eval('B' num2str(i) amin = min(eval('B' num2str(i) maxarray(i-1)=amax minarray(i-1)=aminend %find the difference squence and the max value and min value of each squencemaxmax
14、 = 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)') endend % calculate the greyralational
15、 degree of each datafor(i=2:nrow) eval('greyrelatioanaldegree_value' num2str(i) '= mean (greyrelationdegree' num2str(i) ')' ) end基于matlab灰色關聯(lián)度計算的實現(xiàn)2006年07月28日 星期五 上午 11:06function r=incident_degree(x0,x1) %compute the incident degree for gre
16、y model. %Designed by NIXIUHUI,Dalian Fisher University. %17 August,2004,Last modified by NXH at 21 August,2004 %數(shù)據(jù)初值化處理 x0_initial=x0./x0(1); temp=size(x1); b=repmat(x1(:,1),1 temp(2); x1_initial=x1./b; %分辨系數(shù)選擇 K=0.1; disp('The grey interconnect degree is: &
17、#39;); x0_ext=repmat(x0_initial,temp(1) 1); contrast_mat=abs(x0_ext-x1_initial); delta_min=min(min(contrast_mat);%delta_min在數(shù)據(jù)初值化后實際為零 delta_max=max(max(contrast_mat); a=delta_min+K*delta_max; incidence_coefficient=a./(contrast_mat+K*delta_max);%得到關聯(lián)系數(shù) r=(sum(incidence_coefficient')'/temp(2)
18、; %得到鄧氏面積關聯(lián)度我們根據(jù)圖1的步驟和圖2的數(shù)據(jù)進行編程實現(xiàn),程序如下:%清除內(nèi)存空間等clear;close all;clc;%載入源數(shù)據(jù) %其實這里可以載入execl表格的n=15; %參與評價的人數(shù)m=4;
19、; %參與評價的指標個數(shù)X_0=zeros(n,m); % 數(shù)據(jù)矩陣X_2=zeros(n,m)
20、; %偏差結(jié)果的求取矩陣X_3=zeros(n,m); % 相關系數(shù)計算矩陣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 4
21、3.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; %指標數(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);
22、%取每列的最大值(指標的最大值)%2 計算偏差結(jié)果i=1;while(i=m+1) %為什么這個地方會出問題呢 for j=1:1:n
23、; 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 計算相關系數(shù)i=1;p=0.5;while(i=m+1) for j=1:1:n X_3(j,i)=(error_min+p*error_m
24、ax)/(X_2(j,i)+p*error_max); end; i=i+1;end%X_3 %可以在此觀察關聯(lián)矩陣%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)=
25、a(j)/m; %可以改進% 1 2 3 下一頁%end%a %在此可以觀測各個學生的序 %改進:如果各個指標的所占權(quán)重不一樣的話,可以添加相應的權(quán)系數(shù)%6 排序b=a'c,s=sort(b);for i=1:1:n d(i)=i;endd=d'result=d b c s%7 將結(jié)果顯示出來figure(1);plot(a);figure(2)bar(a);
26、60; %柱狀圖 最后所得到的結(jié)果如圖3到圖5所示。 圖3 程序運行結(jié)果圖4 曲線圖圖5 柱狀圖 根據(jù)以上三圖我們就可以判斷出每個學生序列與參考序列(最大值)之間的關系,與最大值的關系越密切,那么其關聯(lián)度越大。根據(jù)以上的啟示,我用matlab灰度關聯(lián)分析的想法是:1、參考序列我可以選擇已知屬于某一類神經(jīng)元的統(tǒng)計數(shù)據(jù),我選擇平
27、均值。2、加入一個未知類的數(shù)據(jù),與已有類中的數(shù)據(jù)一起計算他們與平均值的關聯(lián)度。3、計算出來的關聯(lián)度我們可以有多種處理思路,如果未知類的關聯(lián)度不是排在最末,可以認為它屬于這一類,或者未知類的關聯(lián)度大于計算出來的關聯(lián)度平均值,我們可以認為它屬于這一類。 使用關聯(lián)度進行分類,計算出來的關聯(lián)度如何使用還是個問題,這個東西是我琢磨出來的,我還沒有見到過相關的文獻,估計應該可以用,期望以后的專家學者鉆研了。參考文獻:1 郝海燕,王斌.大學生綜合素質(zhì)測評的灰色關聯(lián)分析法J.承德石油高等??茖W校學報,2009,11(2):57-59. 上一頁 1 2 3 請教一下
28、用MATLAB實現(xiàn)灰色關聯(lián)分析的程序初始矩陣為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 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
29、.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.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%原始數(shù)據(jù)5行9列x1=xfor i=1:5 for j=1:9 x(i,j)=x(i,j)/x1(1,j) endendx1=xfor i=1:5 for j=1:9 x(i,j)=abs(x(i,j)-x1(i,
30、1) endendmax=x(1,1)min=x(1,1)for i=1:5 for j=1:9 if x(i,j)>=max max=x(i,j) end endendfor i=1:5 for j=1:9 if x(i,j)<=min min=x(i,j) end endendk=0.5 %分辨系數(shù)取值l=(min+k*max)./(x+k*max)%求關聯(lián)系數(shù)矩陣但是運算錯誤!請教一下高手問題補充: 樓下回答的不對,那樣雖不會運行錯誤,但得不到正確的答案 怎么沒人再給我回答啊555555555其他回答 共1條 4.00;4.87 5.89 6.76 7.97 8.84 10.
31、05 11.31 12.25 11.64%原始數(shù)據(jù)5行9列 x1=x %有錯,應該為 x=x1for i=1:5 灰色關聯(lián)matlab程序 瀏覽次數(shù):170次懸賞分:5 | 提問時間:2011-5-25 19:40 | 提問者:zjon111 clear;clc;yangben=12409 15296 18743 22399 26451; %樣本數(shù)據(jù)fangzhen=216314 265810 314045 340903 397983 1.5 4.8 5.9 -0.7 3.3 1184 1204 1113 1102 116811759 13786 15781 17175 19109 38760
32、 51322 61330 68518 83080 109998 137324 172828 224599 278140 79145 93572 114830 132678 156998 161587 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_g
33、yh(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); 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;Ri
34、j;endR哪里出錯了,求高手解答,順便求結(jié)果分析推薦答案 data_gyh1=mean(yangben)得到的是一個數(shù),而data_gyh(i,j)=data(i,j)/data_gyh1(j)中data_gyh1(j)你把data_gyh1作為一個數(shù)組使用的,所以會出錯。追問怎么改合適呢回答其實我不懂灰色關聯(lián)是什么,所以可能在這個上邊幫不了什么忙,你看看灰色關聯(lián)的原理吧,data_gyh1=mean(yangben)這一句得到的data_gyh1就是一個定值,而data_gyh(i,j)=data(i,j)/data_gyh1(j)中需要用到的是什么值呢,你從這方面下手考慮吧。剛搜了一下,
35、看到了跟你這個類似的源程序。他的樣本數(shù)據(jù)是3*6的,所以data_gyh1=mean(yangben)得到是yangben的每一列的均值,而你的yangben是一行的,所以應該直接讓data_gyh1=yangben。個人意見,僅供參考。參考資料:基于matlab的灰度關聯(lián)分析法(2010-09-23 10:12:42) 標簽: matlab灰度關聯(lián)分類分類: matlab相關 做了四天的研究生數(shù)學建模,感覺做的很一般,應該是沒有很好的深入理解題意,而且對于神經(jīng)元的背景信息不是很清楚,導致了后面的東西沒有時間處理,最后一天的熬夜,終于把論文給趕了出來,第二
36、天從早上十點一覺睡到晚上六點半。 關于建模神經(jīng)元這題主要是分類和聚類問題,前者是類別已知,然后判斷測試樣本是否為某一類。后者是無監(jiān)督學習,即么有類別信息和其他先驗知識,一般要求滿足最大組內(nèi)相似性和最小組間相似性。我想到了上學期給同學做的一個使用灰度關聯(lián)分析法進行大學生綜合素質(zhì)評價的東西,下面主要講一下那個東西是怎么實現(xiàn)的。 多指標綜合測評主要有三大類方法:常規(guī)數(shù)學方法、模糊數(shù)學方法、多元統(tǒng)計分析方法?;疑P聯(lián)分析是灰色系統(tǒng)理論中的一個分支,其對數(shù)據(jù)的要求不是很嚴格,不要求數(shù)據(jù)分布具有特殊規(guī)律。下面我按照參考文獻1中的內(nèi)容把
37、綜合素質(zhì)評價的程序給實現(xiàn)。下面是灰度關聯(lián)法進行綜合評價的步驟:圖1 灰度關聯(lián)分析法進行綜合測評的步驟圖2 所使用的綜合評價表 我們根據(jù)圖1的步驟和圖2的數(shù)據(jù)進行編程實現(xiàn),程序如下:%清除內(nèi)存空間等clear;close all;clc;%載入源數(shù)據(jù) %其實這里可以載入execl表格的n=15;
38、60; %參與評價的人數(shù)m=4; %參與評價的指標個數(shù)X_0=zeros(n,m); %
39、0; 數(shù)據(jù)矩陣X_2=zeros(n,m); %偏差結(jié)果的求取矩陣X_3=zeros(n,m); % 相關系數(shù)計算矩陣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
40、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; %指標數(shù)X_1=a1_0',a2_0',a3_0',a4_0' %最后使用到的數(shù)據(jù)矩陣%1 尋找參考列x0=max(a1_0),max(
41、a2_0),max(a3_0),max(a4_0); %取每列的最大值(指標的最大值)%2 計算偏差結(jié)果i=1;while(i=m+1) %為什么這個地方會出問題呢
42、160; 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);error_max=max(max(X_2);%4 計算相關系數(shù)i=1;p=0.5;while(i=m+1) for j=1:1:n X_3(j,i)=(error_min+p*error_m
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45017-2024超疏水表面的力學穩(wěn)定性測試方法
- 委外派遣合同范例
- 爐灶廠家供貨合同范例
- 天津濱海職業(yè)學院《教育統(tǒng)計》2023-2024學年第一學期期末試卷
- 天津濱海汽車工程職業(yè)學院《汽車設計》2023-2024學年第一學期期末試卷
- 渠道砌筑施工方案
- 制作包裝袋合同范例
- 中山勞務合同范例
- 個人樹木買賣合同范例
- 興安供熱合同范例
- 2022版新課標下如何立足課程教學做好幼小銜接解讀
- 班主任工作規(guī)范與政策法規(guī)
- 河南省鄭州市二中共同體2023-2024學年八年級上學期期末數(shù)學試卷(含解析)
- 洛陽市2023-2024學年九年級上學期期末考試英語試題和答案
- 砂漿行業(yè)銷售技巧分析
- 腸道門診管理課件
- 小學禁毒教育教學大綱
- 北京市房山區(qū)2023-2024學年三年級上學期期末數(shù)學試卷
- 2024年中考英語二輪復習學案連詞
- 《中國建筑股份有限公司施工企業(yè)質(zhì)量管理辦法》
- 肛腸科患者的疼痛管理策略與實踐經(jīng)驗
評論
0/150
提交評論