【正文】
r (cross_pos == 0, cross_pos == 1) continue。/*若交叉位置為0或1,則不進(jìn)行交叉*/ end if for j=cross_pos:chromo_size pop(i,j)pop(i+1,j)。/*交換*/ end for end if end for 采用基本位變異。對個(gè)體編碼串中以變異概率隨機(jī)指定某一位或者某幾位基因值作變異運(yùn)算。變異率為Pm,按概率Pm隨機(jī)選取要變異的個(gè)體矩陣,隨機(jī)選取某一行號,在選中的個(gè)體矩陣中用隨機(jī)產(chǎn)生的一行整數(shù)序列替換選中的這一行。另外,如果后代的適應(yīng)值函數(shù)值超過取代的個(gè)體,則進(jìn)行取代操作。采用最大迭代次數(shù)作為終止程序的判斷條件。變異具體算法如下:Mutation algorithmfor i=1:pop_size if rand mutate_rate/*mutate_rate為變異概率*/ mutate_pos = round(rand*chromo_size)。/*變異位置*/ if mutate_pos == 0 continue。/*若變異位置為0,則不進(jìn)行變異*/ end if pop(i,mutate_pos) = 1 pop(i, mutate_pos)。/*將變異位置上的數(shù)字置反*/ end ifend for圖44顯示的設(shè)計(jì)多目標(biāo)遺傳算法的算法過程,從圖中可以看出,算法先生成群體初始節(jié)點(diǎn)分布,再計(jì)算適應(yīng)度,即存儲最佳個(gè)體,接著就是遺傳操作(選擇、交叉、變異),然后適應(yīng)度計(jì)算,選擇出適應(yīng)性最差的個(gè)體,得到后用最佳個(gè)體代替最差個(gè)體。這樣循環(huán)操作,直到滿足終止條件。圖44算法流程 仿真結(jié)果先設(shè)置區(qū)域大小為一個(gè)矩形格點(diǎn)區(qū)域,再設(shè)置監(jiān)測區(qū)域大小為5050m2.。算法開始是先在監(jiān)測區(qū)域內(nèi)隨機(jī)放置100個(gè)節(jié)點(diǎn),再設(shè)置節(jié)點(diǎn)感知半徑 Rs=5m,節(jié)點(diǎn)的通信半徑Rc=10m,檢測模型參數(shù)λ1為1,λ2為0,β1為1,,,,,種群數(shù)=50,最大迭代次數(shù)=150。那么適應(yīng)度函數(shù)定義式為f=+ + (1f3),有100個(gè)傳感器,則染色體長度為100。MATLAB程序?qū)崿F(xiàn)為:初始化:%初始化種群%pop_size: 種群大小%chromo_size: 染色體長度function initilize(pop_size, chromo_size)global pop。for i=1:pop_size for j=1:chromo_size pop(i,j) = round(rand)。 endendclear i。clear j。計(jì)算適應(yīng)度:適應(yīng)度函數(shù)定義式為f = w1f1+ w2f2+ w3(1f3),fitness_value=f。對個(gè)體按照適應(yīng)度大小進(jìn)行排序:%對個(gè)體按適應(yīng)度大小進(jìn)行排序,并且保存最佳個(gè)體%pop_size: 種群大小%chromo_size: 染色體長度function rank(pop_size, chromo_size)global fitness_value。global fitness_table。global fitness_avg。global best_fitness。global best_individual。global best_generation。global pop。global G。for i=1:pop_size fitness_table(i) = 0.。endmin = 1。temp = 1。temp1(chromo_size)=0。for i=1:pop_size min = i。 for j = i+1:pop_size if fitness_value(j)fitness_value(min)。 min = j。 end end if min~=i temp = fitness_value(i)。 fitness_value(i) = fitness_value(min)。 fitness_value(min) = temp。 for k = 1:chromo_size temp1(k) = pop(i,k)。 pop(i,k) = pop(min,k)。 pop(min,k) = temp1(k)。 end end endfor i=1:pop_size if i==1 fitness_table(i) = fitness_table(i) + fitness_value(i)。 else fitness_table(i)=fitness_table(i1)+fitness_value(i)。 endendfitness_tablefitness_avg(G) = fitness_table(pop_size)/pop_size。if fitness_value(pop_size) best_fitness best_fitness = fitness_value(pop_size)。 best_generation = G。 for j=1:chromo_size best_individual(j) = pop(pop_size,j)。 endendclear i。clear j。clear k。clear min。clear temp。clear temp1。接下來就是選擇操作、交叉操作、變異操作,這三種算法在上一節(jié)中有詳細(xì)描述。打印算法迭代過程:%打印算法迭代過程%generation_size: 迭代次數(shù)function plotGA(generation_size)global fitness_avg。x = 1:1:generation_size。y = fitness_avg。plot(x,y)。 將我們設(shè)定的參數(shù)帶入算法中:pop_size = 50。%種群大小hromo_size = 100。%染色體大小generation_size 分別為50,100,150。%迭代次數(shù)cross_rate = 。%交叉概率mutate_rate = 。%變異概率圖45表示的是在監(jiān)測區(qū)域內(nèi)的初始傳感器分布,以及迭代50、100和150次后的傳感器分布情況。從圖中能看出來,隨著迭代次數(shù)的增加,選擇的工作的傳感器節(jié)點(diǎn)數(shù)在減少,而且節(jié)點(diǎn)的分布越來越均勻,不斷趨向于最優(yōu)節(jié)點(diǎn)分布。從表1中看到,k表示算法迭代次數(shù),迭代至25次后,使用57個(gè)傳感器,%。算法運(yùn)行至100代時(shí),使用58個(gè)傳感器,%。算法運(yùn)行至150代時(shí),使用了58個(gè)傳感器,%。從而我們能得出一個(gè)結(jié)論,整個(gè)算法迭代過程是搜索向全局最優(yōu)解的方向進(jìn)行,而且代數(shù)越大,選取的傳感器就越少,更多的冗余節(jié)點(diǎn)不工作,那么即網(wǎng)絡(luò)各區(qū)域能耗越來越均衡,網(wǎng)絡(luò)覆蓋率變高,算法不斷完善。工作節(jié)點(diǎn)數(shù)總體上呈減少趨勢,在算法運(yùn)行過程中有很小的震蕩,這是因?yàn)橛捎诟鲄^(qū)域總節(jié)點(diǎn)數(shù)不同,需要保持區(qū)域的網(wǎng)絡(luò)能耗平衡,部分節(jié)點(diǎn)可能特別關(guān)鍵,需要處于工作狀態(tài)以平衡各區(qū)域間的能耗差異。圖45選擇節(jié)點(diǎn)分布從實(shí)際需要出發(fā),如果注重網(wǎng)絡(luò)覆蓋,可以增加網(wǎng)絡(luò)覆蓋的重量,減少其它兩個(gè)的比重,能源消耗和能量平衡的效果將受到影響;如果專注于能源消耗和網(wǎng)絡(luò)的平衡,可以增加兩個(gè)權(quán)重后,減少覆蓋范圍,這樣的覆蓋度會受到影響。然而,對于整個(gè)網(wǎng)絡(luò)而言,由于加入用于測量該區(qū)域的能量平衡的基礎(chǔ)上,包括的遺傳算法優(yōu)化的最優(yōu)節(jié)點(diǎn)集的算法的能量消耗的均衡器系數(shù),以實(shí)現(xiàn)更高的覆蓋率。在同一時(shí)間,降低區(qū)域能耗和保持均衡網(wǎng)絡(luò),從而延長網(wǎng)絡(luò)的生命周期。表1 仿真結(jié)果K覆蓋度工作節(jié)點(diǎn)數(shù)能耗均衡系數(shù)目標(biāo)函數(shù)值25%5975%55100%58150%58第5章 總結(jié)與展望第5章 總結(jié)與展望本文以多目標(biāo)進(jìn)化算法在無線傳感器網(wǎng)絡(luò)動態(tài)覆蓋中的應(yīng)用為研究對象,研究無線傳感器網(wǎng)絡(luò)動態(tài)覆蓋問題的建模,提出了解決此問題的多目標(biāo)遺傳算法、特別是對多目標(biāo)遺傳算法的遺傳編碼方案進(jìn)行了較為詳細(xì)的研究。對動態(tài)覆蓋問題的建模由兩個(gè)方面組成:網(wǎng)絡(luò)覆蓋度的定義和網(wǎng)絡(luò)壽命的定義。首先,鑒于以前有些文獻(xiàn)把延長網(wǎng)絡(luò)壽命轉(zhuǎn)化為在有限時(shí)間段內(nèi)節(jié)約能量來考慮了,首先說明了節(jié)約能量和延長網(wǎng)絡(luò)壽命在有些情況下不是兩個(gè)完全相同的概念,進(jìn)而在考慮了傳感器能源特性的情況下,給出網(wǎng)絡(luò)壽命的定義。其次,考慮了網(wǎng)絡(luò)壽命的定義和網(wǎng)絡(luò)布局特點(diǎn)等因素,給出了網(wǎng)絡(luò)覆蓋度的定義。最終給出了網(wǎng)絡(luò)的動態(tài)覆蓋問題模型,對于給出的動態(tài)覆蓋問題的模型,因?yàn)榫W(wǎng)絡(luò)壽命是不確定的,這就給多目標(biāo)遺傳算法的編碼帶來了較大困難。而建立的模型,基于多目標(biāo)遺傳算法進(jìn)行了無線傳感器網(wǎng)絡(luò)動態(tài)覆蓋問題的算法設(shè)計(jì),提出了基于遺傳算法的無線傳感器網(wǎng)絡(luò)動態(tài)覆蓋問題算法,主要是對多目標(biāo)遺傳算法設(shè)計(jì),并在此基礎(chǔ)上設(shè)計(jì)無線傳感器網(wǎng)絡(luò)滿足特定覆蓋率的生存時(shí)間,最后通過仿真結(jié)果的有效性分析,驗(yàn)證基于多目標(biāo)遺傳算法的無線傳感器網(wǎng)絡(luò)動態(tài)覆蓋問題算法的有效性。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書第6章 致謝第6章 致謝通過我這兩個(gè)月的努力學(xué)習(xí)與研究,我的論文終于完成了,這意外著我將完成大學(xué)四年的所有的學(xué)習(xí),即將踏出校園走上社會。在此我首先要感謝我的導(dǎo)師何老師,何老師不但在畢業(yè)設(shè)計(jì)中傳授我做研究學(xué)問的方法和一些高屋建瓴的提議,還教會了我為人處世的道理,給了我無盡的關(guān)懷和教誨。這兩個(gè)月的畢業(yè)設(shè)計(jì),我學(xué)到了很多的專業(yè)知識,還有更多的為人處事的道理,使我得以迅速成熟起來,為踏入社會奠定了基礎(chǔ)。這篇文章從選題、課題研究、查閱資料、完成初稿直至最后的定稿,我都收獲了何老師的悉心指導(dǎo)和幫助。何老師嚴(yán)謹(jǐn)求實(shí)的治學(xué)風(fēng)范、高屋建瓴的學(xué)術(shù)眼光,以及孜孜不倦的教導(dǎo)幫助讓我受益匪淺。何老師的榜樣作用深入人心,這也對我以后的學(xué)習(xí)和工作生活產(chǎn)生深遠(yuǎn)的影響。在這里我謹(jǐn)向何老師致以最崇高的敬意和最誠摯的感謝,感謝他對我的幫助。我還要感謝我的同學(xué)們,在畢業(yè)設(shè)計(jì)的困難他們都給我了許多建議和幫助,在我最困難的時(shí)候伸出援手。大學(xué)四年的共同學(xué)習(xí)和工作,一起奮發(fā)向上,一起廢寢忘食的學(xué)習(xí),實(shí)現(xiàn)了我們的共同進(jìn)步,再次感謝他們陪我渡過我人生旅途上最有意義的時(shí)光。在最后我不能忘了一直陪伴在我身邊的家人和朋友,感謝我的父母家人,是他們在黑暗中給了我光明,是他們用無私的厚愛和殷切的期望撐起我人生的大樹,他們將永遠(yuǎn)是我的指路明燈,使我我在人生道路上獲得前進(jìn)的巨大動力,也是我人生中最寶貴的財(cái)富。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書參考文獻(xiàn)參考文獻(xiàn)[1]任豐原,海寧,[J].軟件學(xué)報(bào),2003,14(7):12821291.[2]曦煌.無線傳感器網(wǎng)絡(luò)的研究[M].江蘇江南大學(xué)輕工信息技術(shù)與工程,2008.[3]宋文,王兵,周應(yīng)賓.無線傳感器網(wǎng)絡(luò)技術(shù)與運(yùn)用[M].北京電子工業(yè)出版社,2007.[4]李敏強(qiáng),林丹.遺傳算法的基本理論與應(yīng)用[M].北京科學(xué)出版社,2002.[5]何中勝,朱宇光,[J].計(jì)算機(jī)測量與控制,2012,20(7):17371739,1749.[6]趙旭,雷霖,[J].傳感器與微系統(tǒng),2007,26(8)::[7]張晉,[J].計(jì)算機(jī)工程,2009,35(14):1619.[8]張美燕,[J].傳感技術(shù)學(xué)報(bào),2013,26(5):728733.[9][J].計(jì)算機(jī)應(yīng)用,2013,33(7):18201833.[10][J].西南大學(xué)學(xué)報(bào),2013, 35(1):155159.[11] A. Howard, M. J Matari , and G. S Sukhatme, Mobile Sensor Network Deployment using Potential Fields: A Distributed, Scalable Solution to the Area Coverage Problem, In Proceedings of the 6th International Symposium on Distributed Autonomous Robotics Systems (DARS02), pp. 299308, 2002. [12] Yi Zou, K. Chakrabarty, “Sensor Deployment and Target Localization Based on Virtual Fources”, Proc. IEEE INFOCOM, vol 2 pp:12931302, 2003. [13]