




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于小波變換的圖像去噪方法的研究摘要圖像在生成和傳輸?shù)倪^程中會(huì)受到各種噪聲的干擾,對(duì)信息的處理、傳輸和存儲(chǔ)造成極大的影響。尋求一種既能有效地減小噪聲,又能很好地保存圖像邊緣信息的方法,是人們一直追求的目標(biāo)。小波分析是局部化時(shí)頻分析,它用時(shí)域和頻域聯(lián)合表示信號(hào)的特征,是分析非平穩(wěn)信號(hào)的有力工具。它通過伸縮、平移等運(yùn)算功能對(duì)信號(hào)進(jìn)行多尺度細(xì)化分析,能有效地從信號(hào)中提取信息。本文對(duì)基于小波變換的圖像去噪方法進(jìn)行了研究分析, 詳細(xì)介紹了其去噪原理和算法,分析了去噪過程中參數(shù)的選取問題,并給出了一些選取依據(jù);詳細(xì)介紹了小波系數(shù)相關(guān)性去噪方法的原理和算法。最后對(duì)均值濾波、中值濾波和維納濾波方法在高斯噪聲下
2、進(jìn)行了分析比擬,并給出了仿真實(shí)驗(yàn)結(jié)果,結(jié)果證明小波去噪十分有效,其結(jié)果好于其它3種濾波。關(guān)鍵詞: HYPERLINK :/cdmd ki /Article/%09%09%09%09%09%09%09%09%09%09 :/search ki /Search.aspx?q=%E5%B0%8F%E6%B3%A2%E5%8F%98%E6%8D%A2 t _blank 小波變換, HYPERLINK :/cdmd ki /Article/%09%09%09%09%09%09%09%09%09%09 :/search ki /Search.aspx?q=%E5%9B%BE%E5%83%8F%E5%8E%
3、BB%E5%99%AA t _blank 圖像去噪, HYPERLINK :/cdmd ki /Article/%09%09%09%09%09%09%09%09%09%09 :/search ki /Search.aspx?q=%E9%98%88%E5%80%BC t _blank 閾值, HYPERLINK :/cdmd ki /Article/%09%09%09%09%09%09%09%09%09%09 :/search ki /Search.aspx?q=%E9%98%88%E5%80%BC%E5%87%BD%E6%95%B0 t _blank 閾值函數(shù)1引言數(shù)字圖像在我們?nèi)粘I钪衅鹬?/p>
4、非常重要的作用,它與我們的日常生活息息相關(guān),例如在衛(wèi)星、電視、核磁共振、計(jì)算機(jī)視覺、地球信息系統(tǒng)以及天文學(xué)中應(yīng)用非常廣泛。但是一般情況下采集到的數(shù)字圖像是含有噪聲的。噪聲1可以理解為“阻礙人們感覺器官對(duì)所接收的信源信息理解的因素。圖像在生成和傳輸?shù)倪^程中灰受到各種噪聲的干擾,對(duì)信號(hào)的處理、傳輸和存儲(chǔ)造成極大的影響。數(shù)字圖像之所以含有噪聲這是因?yàn)樵趫D像的采集、獲取、編碼和傳輸?shù)倪^程中,所有的圖像均不同程度地被可見或不可見的噪聲“污染。對(duì)于這種“污染,如果信噪比(SNR)低于一定水平,就會(huì)影響圖像場(chǎng)景內(nèi)容的表示,直接導(dǎo)致圖像質(zhì)量的下降。除了視覺質(zhì)量上下降外,噪聲還可能掩蓋一些重要的圖像細(xì)節(jié),使圖像
5、的熵增大,從而對(duì)于圖像數(shù)據(jù)的有效壓縮起到了一定的阻礙作用。對(duì)于圖像在采集、獲取過程造成的“污染,我們雖然盡量提高硬件設(shè)備以獲取質(zhì)量更高的圖像,但圖像傳感器的截止頻率總是有一定的,受硬件水平和價(jià)格的限制,且圖像在編碼和傳輸過程中造成的“污染,必需采取有效的降噪技術(shù)才能提高圖像的質(zhì)量。對(duì)圖像進(jìn)行去噪最初主要是在空域內(nèi)進(jìn)行的,圖像空域去噪方法很多,主要是通過各種濾波器對(duì)圖像進(jìn)行去噪。例如均值濾波器、順序統(tǒng)計(jì)濾波器、維納濾波器等。為了進(jìn)一步提高去噪的效果,在變換域中進(jìn)行降噪處理成為有效的方法,圖像變換域去噪就是對(duì)圖像進(jìn)行某一種變換,然后將圖像從時(shí)域變換到變換域中,再對(duì)變換域中的圖像變換系數(shù)按照某種方法
6、進(jìn)行處理,最后再對(duì)處理后的系數(shù)按照某種方法進(jìn)行反變換,這樣就實(shí)現(xiàn)了將圖像去除圖像噪聲的目的。將圖像從時(shí)域轉(zhuǎn)換到變換域的變換方法很多,例如傅立葉變換、小波變換等等。小波變換是在短時(shí)傅立葉變換的根底上開展起來的一種新型的變換方法。小波變換具有多分辨率分析的特點(diǎn),在時(shí)域、頻域都具有較強(qiáng)的表征信號(hào)局部特征的能力,因此基于小波分析的圖像去噪技術(shù)已成為圖像去噪的一個(gè)重要方法。本文采用小波閾值去噪的方法,從去噪的效果上比擬了多種去噪方法的優(yōu)劣,實(shí)驗(yàn)證明小波去噪在圖像噪聲處理中起到很好的效果。2小波變換概述2.1 小波變化去噪技術(shù)研究現(xiàn)狀上個(gè)世紀(jì)八十年代Mallet 提出了 MRA(Multi_Resolut
7、ion Analysis),并首先把小波理論運(yùn)用于信號(hào)和圖像的分解與重構(gòu),利用小波變換模極大值原理進(jìn)行信號(hào)的奇異性檢測(cè),提出了交替投影算法用于信號(hào)重構(gòu),為小波變換用于圖像處理奠定了根底1。后來,人們根據(jù)信號(hào)與噪聲在小波變換下模極大值在各尺度上的不同傳播特性,提出了基于模極大值去噪的根本思想。1992年,Donoho和Johnstone提出了“小波收縮,它較傳統(tǒng)的去噪方法效率更高?!靶〔ㄊ湛s被 Donoho和Johnstone證明是在極小化極大風(fēng)險(xiǎn)中最優(yōu)的去噪方法,但在這種方法中最重要的就是確定閾值。1995年,Stanford大學(xué)的學(xué)者和提出了通過對(duì)小波系數(shù)進(jìn)行非線性閾值處理來降低信號(hào)中的噪聲
8、2。從這之后的小波去噪方法也就轉(zhuǎn)移到從閾值函數(shù)的選擇或最優(yōu)小波基的選擇出發(fā)來提高去噪的效果。影響比擬大的方法有以下這么幾種:和提出的基于最大后驗(yàn)概率的貝葉斯估計(jì)準(zhǔn)那么確定小波閾值的方法3;等在處理斷層圖像時(shí)提出了三種基于小波相位的去噪方法:邊緣跟蹤法、局部相位方差閾值法以及尺度相位變動(dòng)閾值法;學(xué)者Kozaitis結(jié)合小波變換和高階統(tǒng)計(jì)量的特點(diǎn)提出了基于高階統(tǒng)計(jì)量的小波閾值去噪方法4;等利用原圖像和小波變換域中圖像的相關(guān)性用GCV(general cross- validation)法對(duì)圖像進(jìn)行去噪;和Woolsey等人提出結(jié)合維納濾波器和小波閾值的方法對(duì)信號(hào)進(jìn)行去噪處理5,Vasily Str
9、ela等人將一類新的特性良好的小波(約束對(duì))應(yīng)用于圖像去噪的方法6;同時(shí),在19世紀(jì)60年代開展的隱馬爾科夫模型(Hidden Markov Model),是通過對(duì)小波系數(shù)建立模型以得到不同的系數(shù)處理方法;后又有人提出了雙變量模型方法7,它是利用觀察相鄰尺度間父系數(shù)與子系數(shù)的統(tǒng)計(jì)聯(lián)合分布來選擇一種與之匹配的二維概率密度函數(shù)。這些方法均取得了較好的效果,對(duì)小波去噪的理論和應(yīng)用奠定了一定的根底。小波具有低墑性、多分辨率、去相關(guān)性、選基靈活性等特點(diǎn)。2.2 連續(xù)小波變換1. 小波基函數(shù)所謂小波(Wavelet),即存在于一個(gè)較小區(qū)域的波。小波函數(shù)的數(shù)學(xué)定義是:設(shè)為一平方可積函數(shù),即,假設(shè)其傅立葉變換
10、滿足:時(shí),那么稱為一個(gè)根本小波或小波母函數(shù),并稱上式是小波函數(shù)的可容許條件。根據(jù)小波函數(shù)的定義,小波函數(shù)一般在時(shí)域具有緊支集或近似緊支集,即函數(shù)的非零值定義域具有有限的范圍,這即所謂“小的特點(diǎn);另一方面,根據(jù)可容許性條件可知,即直流分量為零,因此小波又具有正負(fù)交替的波動(dòng)性。將小波母函數(shù)進(jìn)行伸縮和平移,設(shè)其伸縮因子(亦稱尺度因子)為,平移因子為,并記平移伸縮后的函數(shù)為,那么:并稱為參數(shù)和小波基函數(shù)。由于和均取連續(xù)變換的值,因此又稱為連續(xù)小波基函數(shù),它們是由同一母函數(shù)經(jīng)伸縮和平移后得到的一組函數(shù)系列。2. 連續(xù)小波變換將空間的任意函數(shù)在小波基下進(jìn)行展開,稱其為函數(shù)的連續(xù)小波變換CWT,變換式為:2
11、.3當(dāng)小波的容許性條件成立時(shí),其逆變換為:2.4其中為的容許性條件。另外,在小波變換過程中必須保持能量成比例,即:2.5由CWT的定義可知,小波變換和傅立葉變換一樣,也是一種積分變換,其中為小波變換系數(shù)??梢娦〔ㄗ儞Q對(duì)函數(shù)在小波基上的展開具有多分辨率的特性,這種特性正是通過縮放因子和平移因子來得到的。一個(gè)一維函數(shù)的連續(xù)小波變換是一雙變量的函數(shù),變量比多一個(gè),因此稱連續(xù)小波變換是超完備的,因?yàn)樗蟮拇鎯?chǔ)量和它代表的信息量都顯著增加了。對(duì)于變量超過一個(gè)的函數(shù)來說,這個(gè)變換的維數(shù)也將增加。假設(shè)是一個(gè)二維函數(shù),那么它的連續(xù)小波變換是:2.6其中,表示在兩個(gè)維度上的平移,二維連續(xù)小波逆變換為:2.7同
12、樣的方法可以推廣到兩個(gè)或兩個(gè)以上的變量函數(shù)上。2.3 離散小波變換計(jì)算機(jī)中的圖像信息是以離散信號(hào)形式存放的,所以需要將連續(xù)小波變換離散化。而最根本的離散化方法就是二進(jìn)制離散,一般將這種經(jīng)過離散化的小涉及其變換叫做二進(jìn)小波和二進(jìn)變換。需要注意的是這里的離散化都是針對(duì)連續(xù)的尺度因子和連續(xù)平移因子的,而不是針對(duì)時(shí)間的。這兒限制尺度因子總是正數(shù)。尺度與位移的離散化對(duì)連續(xù)小波基函數(shù)尺度因子和平移因子進(jìn)行離散化可以得到離散小波變換,從而減少小波變換系數(shù)的冗余度。在離散化時(shí)通常對(duì)尺度因子和平移因子按冪級(jí)數(shù)進(jìn)行離散化,即取為整數(shù),但一般都假定,得到離散小波函數(shù)為:2.8其對(duì)應(yīng)系數(shù)為:2.9二進(jìn)制小波變換二進(jìn)小
13、波變換是一種特殊的離散小波變換,特別地令參數(shù),那么有。該二進(jìn)尺度分解的原理在二十世紀(jì)三十年代由 Littlewood 和 Paley 在數(shù)學(xué)上進(jìn)行了研究證明。離散小波變換為:0離散二進(jìn)小波變換為:1二維離散小波變換:我們考慮二維尺度函數(shù)是可別離的情況,也就是:2設(shè)是與對(duì)應(yīng)的一維小波函數(shù),那么有:345以上三式就建立了二維小波變換的根底。圖像的小波變換及Mallat算法圖像是二維信號(hào),二維多分辨率分析與一維類似,但空間變成,一維中引入的尺度函數(shù)變?yōu)?。設(shè)是的一個(gè)多分辨率分析,那么可以證明,張量空間:構(gòu)成的一個(gè)多分辨率分析,并且二維多分辨率分析的二維尺度函數(shù)為 (2.16)式中:是尺度函數(shù)(一維)。
14、式(2.28)說明了二維尺度函數(shù)的可別離性。對(duì)于每一個(gè),函數(shù)系構(gòu)成的標(biāo)準(zhǔn)正交基,這里下標(biāo)j,n,m的含義是:2.17我們將稱為的可別離多分辨率分析。因、都是低通的尺度函數(shù),所以平滑的低通空間。如果是一維多分辨率分析的正交小波基,那么二維多分辨率分析的三個(gè)小波函數(shù)為:2.18對(duì)于每一個(gè),它們的整數(shù)平移系為:2.19注意這里的上標(biāo)只是索引而不是指數(shù)。它們構(gòu)成了的標(biāo)準(zhǔn)正交基。因此以上的三個(gè)正交基中都至少包含一個(gè)帶通的或,所以它們都是帶通的。也就是說這三局部反響的都是細(xì)節(jié)信息。具體來說,函數(shù)系,是的正交歸一基,其中均為整數(shù),=1,2,3分別對(duì)應(yīng)于水平、垂直和對(duì)角三個(gè)方向。對(duì)于任一二維圖像信號(hào),在分辨率
15、下有: 2.20上式說明,在分辨率上將圖像分解成、和四個(gè)子圖,其中代表原圖像在分辨率上的近似即圖像的低頻局部,不妨用LL來表示,那么代表這種近似的誤差即圖像的高頻局部或“細(xì)節(jié)局部;對(duì)應(yīng)于垂直方向的高頻成分,即水平的邊緣細(xì)節(jié)信息不妨用LH表示;對(duì)應(yīng)于水平方向的高頻成分,即垂直的邊緣細(xì)節(jié)信息不妨用HL表示;那么對(duì)應(yīng)于對(duì)角方向的高頻成分不妨用HH表示。圖2.1形象地表示了二維圖像的多分辨率小波分解。圖中符號(hào)的上標(biāo)表示圖像的小波分解層數(shù),圖中示意了圖像的2級(jí)小波分解??梢钥吹剑诿恳环纸鈱由?,圖像均被分解為L(zhǎng)L, LH, HL和HH的四個(gè)頻帶;下一層的分解僅對(duì)低頻分量LL進(jìn)行分解。f (x , y)L
16、L11LL2LH2HL2HH2LH1HL1HH1(a) 圖像的小波樹形分解LL2HL2 LH2HH2HL1LH1HH1(b) 圖像小波分解的塔型結(jié)構(gòu)圖2.1二維圖像的小波分解按照Mallat的快速算法,圖像的小波分解算法如圖2.2所示:GHGHGHX與濾波器X卷積H低通濾波器G高通濾波器從兩列中取一列從兩行中取一行圖2.2圖像的小波分解算法圖2.2示意了圖像的一步小波分解過程,可以看到:二維圖像的小波分解可以對(duì)圖像依次按行、按列與一維的低通(H)和高通(G)濾波器作卷積來實(shí)現(xiàn),在卷積之后進(jìn)行相應(yīng)的降2采樣。圖像小波分解的重構(gòu)算法如圖2.3所示。HGXGHHG與濾波器X卷積H低通濾波器G高通濾波
17、器在相鄰兩列間插入一列零在相鄰兩行間插入一行零圖2.3圖像的小波重構(gòu)算法圖2.3示意了小波分解圖像的一步重構(gòu)過程,小波分解圖像的重構(gòu)是先對(duì)列或行進(jìn)行升2采樣(在相鄰列或行間插入一零列或零行),然后再按行、按列與一維的低通或高通濾波器進(jìn)行卷積,這樣遞推下去便可重構(gòu)原圖像。二維圖像的這種行、列可別離性簡(jiǎn)化了圖像的小波變換。3小波閾值去噪3.1閾值函數(shù)的選取在閾值去噪中,閾值函數(shù)表達(dá)了對(duì)超過和低于閾值的小波系數(shù)模的不同處理策略以及不同估計(jì)方法。常用的閾值函數(shù)有硬閾值函數(shù)和軟閾值函數(shù)兩種8-9。硬閾值策略保存大于閩值的小波系數(shù),而把小于閾值的小波系數(shù)都設(shè)定為零。軟閾值策略把小于閩值的小波系數(shù)置零,把大
18、于閾值的小波系數(shù)的絕對(duì)值減去閾值以除去噪聲的影響。設(shè)A為元素小波系數(shù),t為閾值,兩種閾值函數(shù)的表達(dá)式分別如下:硬閾值函數(shù):3.1軟閾值函數(shù):3.2-ttAt-tAa硬閾值b軟閾值硬閾值法得到的小波系數(shù)的連續(xù)性較差,重構(gòu)信號(hào)可能出現(xiàn)突變或振蕩現(xiàn)象;如圖3.2a所示。軟閾值法的到的小波系數(shù)的連續(xù)性好,但當(dāng)小波系數(shù)較大時(shí),得到的處理后的小波系數(shù)和實(shí)際的小波系數(shù)有一定的偏差,會(huì)導(dǎo)致重構(gòu)結(jié)果的誤差。如圖3.2b所示。圖3.2 兩種閾值方法3.2閾值的選取小波閾值去噪方法除了閾值函數(shù)的選取,另一個(gè)關(guān)鍵因素是對(duì)閾值的具體估計(jì)。如果閾值較小,去噪后的圖像信號(hào)與輸入比擬接近,但是殘留了較多噪聲。假設(shè)閾值較大,那
19、么得到較多為零的小波系數(shù),對(duì)于軟閾值策略重建圖像變得模糊。在小波域閾值去噪中,閾值的選取直接影響濾波效果。本文用了2種的閾值估計(jì)方法。Visushrink閾值也稱通用閾值,是Donoho和Johnstone提出的,針對(duì)多維獨(dú)立正態(tài)變量聯(lián)合分布,在維數(shù)趨于無窮是得出的結(jié)論,是基于最小最大估計(jì)得出的最優(yōu)閾值10。閾值t的選擇滿足3.3其中,N為信號(hào)長(zhǎng)度,為噪聲標(biāo)準(zhǔn)差。的估計(jì)公式如下:3.4Surehrink閾值也稱Stein無偏風(fēng)險(xiǎn)閾值,是一種基于Stein的無偏似然估計(jì)的自適應(yīng)閾值選擇s53,它是針對(duì)軟閾值函數(shù)得出的結(jié)論。SureShrink閾值的具體計(jì)算過程如下:= 1 * GB3求取信號(hào)的長(zhǎng)
20、度N;= 2 * GB3將某一層的小波系數(shù)的絕對(duì)值由小到大排列,得打一個(gè)新的向量,X=x1,x2,x3,xN,其中x1x2x320 ?NJ=3, coif2小波3層分解噪聲圖J=4,coif2小波4層分解噪聲圖提取1,2,3層小波系數(shù)提取1,23,4層小波系數(shù)對(duì)橫、豎、斜三個(gè)尺度進(jìn)行軟閾值去噪小波重構(gòu)輸出去噪圖像本文采用了小波基為coif2的小波分解法,以及以上2中閾值去噪法,過程如下:圖3.4本文小波去噪流程圖4實(shí)驗(yàn)仿真及結(jié)論本文為說明小波去噪的有效性和優(yōu)越性,對(duì)含有高斯白噪聲的Lenna圖像進(jìn)行消噪處理,其中噪聲平均為0,方差為,。為了客觀評(píng)價(jià)噪聲圖像的噪聲污染度,以及各種去噪方法的效果,
21、本文引用了峰值信噪比PSNR:4.1式中I(i,j)和I(i,j)分別是有噪圖像和原始理想圖像在點(diǎn)i,j處的灰度值,m、n分別表示圖像的行數(shù)和列數(shù)。由于在各方差噪聲下,噪聲圖像的峰值信噪比均小于20,所以小波尺度取J=4。本文對(duì)方差為噪聲圖像進(jìn)行小波系數(shù)分解,得到下列圖:圖4.SEQ 圖表 * ARABIC1小波系數(shù)分解圖本文分別用小波去噪、均值去噪、中值去噪和維納去噪對(duì)8位的255灰度值的Lena圖像進(jìn)行去噪處理,結(jié)果圖如下所示:圖去噪效果圖此外,本文也對(duì)多個(gè)方差的噪聲進(jìn)行去噪處理,并得出PSNR值進(jìn)行比照,如下表所示。表4.1 各種去噪方法的PSNR值比擬實(shí)驗(yàn)序號(hào)噪聲方差噪聲圖像PSNR均
22、值濾波PSNR中值濾波PSNR維納濾波PSNR小波去噪PSNR123456通過以上結(jié)果分析可知,小波閾值去噪的效果較均值濾波、中值濾波和維納濾波效果都好。參考文獻(xiàn)1 楊福生.小波變換的工程分析與應(yīng)用.北京:科學(xué)出版社,1999:150-176.2 阮秋琦.數(shù)字圖像處理學(xué)M.第二版.北京.電子工業(yè)出版社3 , 57:301-369.4 D.L.Donoho, I.M.Johnstone. Ideal Time-Frequency Denoising. Standford University,Technical Report, Dept. of Statistics,1994:3397-3415
23、.5 張曄,黃秀明.小波變換及在圖像處理中的小波特性分析J.中國(guó)圖像圖形學(xué)報(bào),1997,2(7):480-484.6 Elwood T.Olsen, Biquan Lin. A Wavelet Phase Filter for Emission Tomography. SPIE,1996,2491:829-839.7 Kozaitis, Basuhail. Adaptive Wavelet Threshold Selection Using Higher Order Statistics for Signal Denoising. SPIE,1998,3391:68-74.9 Shubhank
24、ar R,Bani K.A Bayesian transformation model for wavelet shrinkage. IEEE Trans. on IP.2003.12(12).1512-152011 張磊,潘泉,張洪才,戴冠中,小波域?yàn)V波閾值參數(shù)的選取,電子學(xué)報(bào), 2001,3,29(3).12 Xu Chen, Zhao Ruizhen, Gan Xiaobing. ApplicationAlgorithm of Wavelet AnalysisM. Beijing:Science Press,2004.13 Chao Rui, Zhang Ke, Li Yanjun. A
25、 Wavelet TransformBased Image Fusion MethodJ.Acta Electronica Sinica,2004,32(5):750-753.14 Gai Li-ping,Wang Gui-lian. HYPERLINK :/d.wanfangdata /Periodical_ylwszb200706022.aspx Technology of filtering in medical image processingJ.ChineseMedical EquipmentJournal,2007,(06):50-51.15 Gao Qing-wei,Li Bin
26、. HYPERLINK :/d.wanfangdata /Periodical_jsjyjyfz200212023.aspx An image de-noising method based on stationary wavelet transformJ.Journal of Computer Research and Development,2002,(12):1689-1693.TSP題目程序說明1、主函數(shù):運(yùn)行20次2、次函數(shù):備注:1、可以直接運(yùn)行,其結(jié)果是一次遺傳算法計(jì)算產(chǎn)生的解。9198的注釋符“%去掉可以,顯示一個(gè)最優(yōu)解并畫圖2、種群大小在該函數(shù)中修改。3、適應(yīng)度計(jì)算函數(shù):4、
27、選擇函數(shù):5、交叉函數(shù):6、變異函數(shù):7、路程計(jì)算函數(shù):關(guān)于數(shù)據(jù)存儲(chǔ)的說明:數(shù)據(jù)沒有存到外存,直接存在matlab的workspace里。20次計(jì)算產(chǎn)生20個(gè)歷史最優(yōu)值用NOWminLENGHTcun存儲(chǔ),其維數(shù)是20*100020次計(jì)算產(chǎn)生20個(gè)每代最優(yōu)值用LENGHTcun存儲(chǔ),其維數(shù)是20*100020次計(jì)算產(chǎn)生20個(gè)每代最優(yōu)解路徑用shortestPath存儲(chǔ),其維數(shù)是20*15程序如下主函數(shù):ticclcclear allshortestLEN=0; %用來存儲(chǔ)每次的最優(yōu)值shortestPath=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; %用來存儲(chǔ)每
28、次的最優(yōu)解LENGHTcun=zeros(1,1000); %用來存儲(chǔ)每次的1000代的每代最好值NOWminLENGHTcun=zeros(1,1000); for i=1:20i opt_Path,NOWminLENGHT,LENGHT=TSP_GA();%GA運(yùn)行20次,計(jì)算性能if i=1shortestLEN=min(NOWminLENGHT);shortestPath=opt_Path;LENGHTcun=LENGHT;NOWminLENGHTcun=NOWminLENGHT;elseshortestLEN=shortestLEN min(NOWminLENGHT);shortes
29、tPath=shortestPath;opt_Path;LENGHTcun=LENGHTcun;LENGHT;NOWminLENGHTcun=NOWminLENGHTcun;NOWminLENGHT;endendaver_shortestLEN=mean(shortestLEN); %平均性能maxLEN=max(shortestLEN); %最差性能minLEN x=min(shortestLEN); %最好性能fangcha=var(shortestLEN); %方差fprintf(20次隨機(jī),平均最短距離為%3.3fn,aver_shortestLEN);fprintf(20次隨機(jī),最好
30、性能為%dn,minLEN);fprintf(20次隨機(jī),最差性能為%dn,maxLEN);fprintf(20次隨機(jī),方差為%.3fn,fangcha);tocplot(1:1000,LENGHTcun(x,:),b)hold onplot(1:1000,NOWminLENGHTcun(x,:),r)legend(每代最優(yōu)值,歷史最優(yōu)值)xlabel(代數(shù))ylabel(路程)title(無災(zāi)變情況下種群大小=40的最優(yōu)解)子函數(shù):該子函數(shù)是單次GA算法,可直接當(dāng)主函數(shù)運(yùn)行% *程序說明*% 陳福沨% 日期:2021年1月9日% 父代種群:individium% 子代:nextGenerat
31、% 下一代種群:nextGenera競(jìng)爭(zhēng)選擇之后% 當(dāng)前最優(yōu)值:NOWminLENGHT% 每代最優(yōu)值: LENGHT% 可更改種群大小 N% 該子程序?yàn)橐淮斡?jì)算,可直接運(yùn)行,將15,9198的注釋符“%去掉即顯示一個(gè)最有解并畫圖%*function opt_Path,NOWminLENGHT,LENGHT=TSP_GA()clcclear all%tic% 城市間距離鄰接矩陣D=0 66 72 16 74 25 60 24 78 44 63 17 67 70 -999; 66 0 7 49 8 67 10 42 13 24 6 49 6 5 22; 72 7 0 56 2 74 14 49
32、6 30 10 55 7 4 28; 16 49 56 0 58 27 44 9 62 28 47 2 51 54 38; 74 8 2 58 0 75 16 50 4 32 11 57 8 5 30; 25 67 74 27 75 0 64 36 80 52 67 29 71 71 49; 60 10 14 44 16 64 0 36 19 16 4 43 8 14 26; 24 42 49 9 50 36 36 0 55 20 39 8 43 47 35; 78 13 6 62 4 80 19 55 0 36 15 61 12 9 33; 44 24 30 28 32 52 16 20 3
33、6 0 20 27 24 29 27; 63 6 10 47 11 67 4 39 15 20 0 46 4 10 25; 17 49 55 2 57 29 43 8 61 27 46 0 50 53 39; 67 6 7 51 8 71 8 43 12 24 4 50 0 8 28; 70 5 4 54 5 71 14 47 9 29 10 53 8 0 24;-999 22 28 38 30 49 26 35 33 27 25 39 28 24 0;% 重要參數(shù)定義T=1000; %迭代代數(shù)1000代N=40; %種群個(gè)體數(shù)Score=zeros(1,N); %用來存子代分?jǐn)?shù)Lenght=
34、zeros(1,N); %用來存子代路程Fitness=zeros(1,N); %用來存子代適應(yīng)度LENGHT=0; %來存儲(chǔ)每代種群中最好的個(gè)體NOWminLENGHT=0; %存儲(chǔ)當(dāng)前最好值opt_Path=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; %存儲(chǔ)最優(yōu)解zaibian=0; %災(zāi)變標(biāo)記% 個(gè)體的表示和初始化種群individium=struct(path,fitness,lenght,Pc,); %把個(gè)體用結(jié)構(gòu)體表示:路徑,適應(yīng)度,路程,生存概率for n=1:N %對(duì)115隨機(jī)排序,產(chǎn)生初始種群individium(n).path=randperm
35、(15);end% 主函數(shù)nextGenerat=Gene_cross(individium,N); %交叉:產(chǎn)生下一代nextGenera為下一代個(gè)體individiumt,lenght,score,fitness=Calculate_fitness(nextGenerat,N,D); %計(jì)算子代的適應(yīng)度和生存概率nextGenera=Selection(individiumt,N,fitness); %選擇:用生存概率選擇產(chǎn)生下一代種群individiumt,lenght,score,fitness=Calculate_fitness(nextGenera,N,D); %計(jì)算種群的適應(yīng)度S
36、core=score;Lenght=lenght;Fitness=fitness;individium=nextGenera; %下一代種群LENGHT=min(lenght); NOWminLENGHT=LENGHT;for t=2:T % 遺傳算法:交叉變異選擇 t %顯示代數(shù) nextGenerat=Gene_cross(individium,N); %交叉:產(chǎn)生下一代nextGenera為下一代個(gè)體 individiumt,lenght,score,fitness=Calculate_fitness(nextGenerat,N,D); %計(jì)算子代的適應(yīng)度和生存概率 nextGenera
37、t=bianyi(individiumt,N,1); %變異:變異概率分別為和,p=1是一個(gè)系數(shù),用來方便調(diào)整變異率 individiumt,lenght,score,fitness=Calculate_fitness(nextGenerat,N,D); %計(jì)算種群的適應(yīng)度和生存概率 nextGenera=Selection(individiumt,N,fitness); %選擇:用生存概率選擇產(chǎn)生下一代種群 individiumt,lenght,score,fitness=Calculate_fitness(nextGenerat,N,D); Score=Score;score;Lenght
38、=Lenght;lenght; Fitness=Fitness;fitness; individium=nextGenera; %*以下存儲(chǔ)最優(yōu)值和最優(yōu)解*NOWminLENGHT=NOWminLENGHT min(LENGHT); %存儲(chǔ)當(dāng)前最優(yōu)值 minLENGHT x=min(lenght); if minLENGHT=NOWminLENGHT(t) zaibian=zaibian+1;elsezaibian=0;endifzaibian=200 for n=1:N %災(zāi)變:重新隨機(jī)初始化individium(n).path=randperm(15);endzaibian=0;enden
39、d%opt_Path%plot(1:T,LENGHT,b)%hold on%plot(1:T,NOWminLENGHT,r)%legend(每代最優(yōu)值,歷史最優(yōu)值)%xlabel(代數(shù))%ylabel(路程)%title(種群大小=10的最優(yōu)解)子函數(shù):Calculate_fitness.m適應(yīng)度函數(shù)function individium,lenght,score,fitness=Calculate_fitness(individium,N,D) %計(jì)算種群的每個(gè)個(gè)體適應(yīng)度和生存概率score=zeros(1,N); %處理前的分?jǐn)?shù)scoret=zeros(1,N); %處理后的分?jǐn)?shù)lengh
40、t=zeros(1,N); %存儲(chǔ)路程fitness=zeros(1,N); %存儲(chǔ)適應(yīng)度f(wàn)or n=1:N score(n)=lenghtCal(individium(n).path,D);individium(n).lenght=score(n);lenght(n)=score(n);end% 對(duì)路程值進(jìn)行取反,并歸一化為scorescore_Max=max(score);score_Min=min(score);ifscore_Max=score_Min score=(score_Max-score)/(score_Max-score_Min); %由于該實(shí)例的存在負(fù)值的路程,且值越小適
41、應(yīng)度越大,歸一化處理elseifscore_Max0score=score./999;elsescore=-score./999;endendScore=sum(score);average=Score/N;% 對(duì)score進(jìn)行處理成scoret,舍棄得分小于平均值的個(gè)體for n=1:Nif score(n)0 &seletlunpan(i) &selet=lunpan(i+1) nextGenera(n)=individiumt(i+1);endendendendnextGenera(1)=individiumt(x); %將精英保存下去子函數(shù):Gene_cross.m交叉function nextGenera=Gene_cross(individium,N) %交叉算子nextGenera=struct(path,fitness,lenght,Pc,);for n=2:2:N site=randint(1,1,1,14); %隨機(jī)產(chǎn)生交叉位置:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度個(gè)人環(huán)保產(chǎn)業(yè)股份轉(zhuǎn)讓合同
- 二零二五年度醫(yī)療機(jī)構(gòu)與康復(fù)醫(yī)院醫(yī)生合作合同
- 二零二五年度股東債權(quán)債務(wù)清算與債務(wù)重組財(cái)務(wù)顧問協(xié)議
- 二零二五年度綠色養(yǎng)殖基地雇傭放羊合同
- 二零二五年度漁業(yè)資源保護(hù)與魚塘承包責(zé)任合同
- 2025年度生態(tài)農(nóng)業(yè)園招商引資合同性質(zhì)與生態(tài)循環(huán)農(nóng)業(yè)發(fā)展
- 二零二五年度養(yǎng)老護(hù)理勞務(wù)合同解除標(biāo)準(zhǔn)指南
- 《物流系統(tǒng)分析》課件 項(xiàng)目二任務(wù)四 掌握物流需求預(yù)測(cè)方法
- 2025年吉林b2從業(yè)資格證模擬考試題目
- 2025年濟(jì)南貨運(yùn)從業(yè)資格證考試模擬考試答案大全
- 發(fā)揚(yáng)體育精神展青春光彩
- 腳輪行走測(cè)試技術(shù)規(guī)范
- 《關(guān)于情商的》課件
- 頸部膿腫護(hù)理查房課件
- 跨境電子商務(wù)案例分析 習(xí)題及答案 易靜
- 信息技術(shù)與小學(xué)數(shù)學(xué)學(xué)科教學(xué)整合的
- 500格作文紙-(20x25)文檔
- 九年級(jí)中考物理-安培定則(右手螺旋定則)復(fù)習(xí)題匯總及解析
- 錨固溝施工方案
- 廣西太陽(yáng)能資源分析
- Internet網(wǎng)絡(luò)技術(shù)與應(yīng)用課件
評(píng)論
0/150
提交評(píng)論