基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化方法研究
本文關(guān)鍵詞:基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化方法研究,,由筆耕文化傳播整理發(fā)布。
【摘要】:隨著軟件工程領(lǐng)域的不斷發(fā)展,軟件的需求和外部環(huán)境也不斷地發(fā)生變化,軟件必須進(jìn)行動態(tài)演化來適應(yīng)這些變化。但是軟件的演化過程由于受到各種因素的影響而變得難以控制。軟件體系結(jié)構(gòu)從全局的角度宏觀地描述了軟件系統(tǒng)的結(jié)構(gòu),對軟件的整體把握提供了一條有效地途徑。如何從軟件體系結(jié)構(gòu)的角度來描述軟件的動態(tài)演化,這已經(jīng)成為軟件演化研究的重要方向。當(dāng)前的軟件體系結(jié)構(gòu)動態(tài)演化研究很少考慮從生物進(jìn)化的特征來研究軟件體系結(jié)構(gòu)動態(tài)演化,并提高軟件體系結(jié)構(gòu)演化過程的運行效率。本文使用遺傳算法及其改進(jìn)算法對軟件體系結(jié)構(gòu)動態(tài)演化進(jìn)行研究。第一,提出了一種基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化模型。利用遺傳算法對軟件體系結(jié)構(gòu)動態(tài)演化進(jìn)行編碼,從而形成構(gòu)件群體,然后對構(gòu)件群體進(jìn)行初始化;定義一個適應(yīng)度函數(shù)來計算構(gòu)件群體中每個構(gòu)件的適應(yīng)度函數(shù)值;對構(gòu)件群體進(jìn)行遺傳操作,包括變異操作、交叉操作和選擇操作,操作后計算每個構(gòu)件的適應(yīng)度函數(shù)值;根據(jù)它們的適應(yīng)度值的大小來決定這些構(gòu)件是否作為下一代構(gòu)件群體,對上述過程進(jìn)行迭代操作,最后生成目標(biāo)構(gòu)件群體。第二,由于遺傳算法在上述的演化過程中可能出現(xiàn)局部搜索能力不強(qiáng)和運行效率較低的情況,為充分利用遺傳算法在軟件體系結(jié)構(gòu)動態(tài)演化中的優(yōu)勢、避開其缺陷、進(jìn)一步加快收斂速度,本文主要從以下幾方面進(jìn)行改進(jìn)操作,初始構(gòu)件群體的改進(jìn)、變異操作和交叉操作的改進(jìn)、收斂準(zhǔn)則的改進(jìn)和引入復(fù)合形算子操作,從而提出了一種基于改進(jìn)遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化模型。本文通過一個智能家居系統(tǒng)實例和四組測試數(shù)據(jù)對兩種模型方法進(jìn)行實驗分析,通過實驗結(jié)果可以得出以下幾個結(jié)論。第一,解決了具有生物進(jìn)化特征的遺傳算法對軟件體系結(jié)構(gòu)動態(tài)演化進(jìn)行正確演化的問題,具有可行性和有效性;第二,在實現(xiàn)軟件體系結(jié)構(gòu)動態(tài)演化的過程中,具有生物進(jìn)化特征的遺傳算法的時間復(fù)雜度比文獻(xiàn)[50]中元胞自動機(jī)算法的時間復(fù)雜度要低一些,即基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化的運行效率更高一些;第三,利用初始構(gòu)件群體的改進(jìn)和引入復(fù)合形算子操作等多種改進(jìn)方式以加快生成軟件體系結(jié)構(gòu)動態(tài)演化的目標(biāo)構(gòu)件群體,最終進(jìn)一步提高了軟件體系結(jié)構(gòu)動態(tài)演化的運行效率。
【關(guān)鍵詞】:軟件體系結(jié)構(gòu) 軟件動態(tài)演化 改進(jìn)遺傳算法 運行效率
【學(xué)位授予單位】:東華理工大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2016
【分類號】:TP311.52;TP18
【目錄】:
- 摘要4-5
- Abstract5-9
- 第1章 緒論9-13
- 1.1 研究背景及意義9-10
- 1.2 國內(nèi)外研究現(xiàn)狀10-11
- 1.2.1 國外相關(guān)研究10
- 1.2.2 國內(nèi)相關(guān)研究10-11
- 1.3 本文研究內(nèi)容11-12
- 1.4 本文組織結(jié)構(gòu)12-13
- 第2章 軟件體系結(jié)構(gòu)和遺傳算法的概念13-27
- 2.1 軟件體系結(jié)構(gòu)13-15
- 2.1.1 軟件體系結(jié)構(gòu)的定義13
- 2.1.2 軟件體系結(jié)構(gòu)的結(jié)構(gòu)13-15
- 2.2 軟件演化15-17
- 2.2.1 軟件演化的定義15-16
- 2.2.2 軟件演化的分類16-17
- 2.3 軟件體系結(jié)構(gòu)動態(tài)演化17-18
- 2.4 遺傳算法18-25
- 2.4.1 遺傳算法的定義18
- 2.4.2 遺傳算法的基本操作18-20
- 2.4.3 遺傳算法的理論依據(jù)20-23
- 2.4.4 遺傳算法的基本實現(xiàn)技術(shù)23-25
- 2.5 本章小結(jié)25-27
- 第3章 基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化27-39
- 3.1 軟件體系結(jié)構(gòu)演化的編碼及初始化構(gòu)件群體27-28
- 3.1.1 軟件體系結(jié)構(gòu)動態(tài)演化的編碼27-28
- 3.1.2 構(gòu)件群體的初始化28
- 3.2 軟件體系結(jié)構(gòu)演化的適應(yīng)度函數(shù)28-31
- 3.3 軟件體系結(jié)構(gòu)演化的遺傳操作31-35
- 3.3.1 變異操作31-32
- 3.3.2 交叉操作32-34
- 3.3.3 選擇操作34-35
- 3.4 案例分析35-37
- 3.5 本章小結(jié)37-39
- 第4章 基于改進(jìn)遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化39-47
- 4.1 改進(jìn)軟件體系結(jié)構(gòu)演化的初始構(gòu)件群體39-41
- 4.2 變異操作和交叉操作的改進(jìn)41-42
- 4.2.1 變異操作的改進(jìn)41-42
- 4.2.2 交叉操作的改進(jìn)42
- 4.3 收斂準(zhǔn)則的改進(jìn)42
- 4.4 軟件體系結(jié)構(gòu)動態(tài)演化的復(fù)合形算子42-45
- 4.4.1 軟件體系結(jié)構(gòu)演化的復(fù)合形步驟43-44
- 4.4.2 改進(jìn)遺傳算法的形成44-45
- 4.5 案例分析45-46
- 4.6 本章小結(jié)46-47
- 第5章 基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化實現(xiàn)與實驗47-61
- 5.1 適應(yīng)度函數(shù)指標(biāo)的實現(xiàn)和調(diào)整47-49
- 5.1.1 適應(yīng)度函數(shù)指標(biāo)的實現(xiàn)47
- 5.1.2 適應(yīng)度函數(shù)指標(biāo)的調(diào)整47-49
- 5.2 基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化實現(xiàn)與實驗49-56
- 5.2.1 基于軟件體系結(jié)構(gòu)類圖的實現(xiàn)49-50
- 5.2.2 遺傳算法的算法實現(xiàn)50-51
- 5.2.3 仿真實驗與分析51-56
- 5.3 基于改進(jìn)遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化實現(xiàn)與實驗56-60
- 5.3.1 改進(jìn)遺傳算法的算法實現(xiàn)56-57
- 5.3.2 仿真實驗與分析57-60
- 5.4 本章小結(jié)60-61
- 第6章 總結(jié)與展望61-63
- 6.1 總結(jié)61-62
- 6.2 展望62-63
- 致謝63-65
- 參考文獻(xiàn)65-67
【參考文獻(xiàn)】
中國期刊全文數(shù)據(jù)庫 前10條
1 蘇世雄;齊金平;;一種自適應(yīng)軟件體系結(jié)構(gòu)框架模型的建立[J];計算機(jī)科學(xué);2015年S2期
2 陳向東;;動態(tài)自適應(yīng)軟件體系結(jié)構(gòu)重配置研究[J];計算機(jī)科學(xué);2015年06期
3 王華;李長云;魏秋彥;周玲芳;;運行時基于模型的軟件動態(tài)演化良性建模方法[J];計算機(jī)技術(shù)與發(fā)展;2015年05期
4 劉曉斌;楊貫中;歐陽柳波;李勇軍;;軟件體系結(jié)構(gòu)動態(tài)演化的元胞自動機(jī)模型研究[J];計算機(jī)工程與應(yīng)用;2015年09期
5 陳利平;徐洪珍;;基于關(guān)聯(lián)矩陣的軟件體系結(jié)構(gòu)動態(tài)演化及其實現(xiàn)[J];計算機(jī)應(yīng)用研究;2013年09期
6 朱銳;李彤;代飛;謝仲文;劉金卓;錢曄;;基于改進(jìn)EPMM軟件演化過程時間約束的分析研究[J];計算機(jī)應(yīng)用與軟件;2013年02期
7 姜娜;孔浩;;淺析軟件演化過程描述語言的作用及特點[J];昆明學(xué)院學(xué)報;2012年03期
8 徐洪珍;曾國蓀;陳波;;軟件體系結(jié)構(gòu)動態(tài)演化的條件超圖文法及分析[J];軟件學(xué)報;2011年06期
9 徐洪珍;曾國蓀;;基于超圖文法的軟件體系結(jié)構(gòu)動態(tài)演化[J];同濟(jì)大學(xué)學(xué)報(自然科學(xué)版);2011年05期
10 魯宇明;黎明;李凌;;一種具有演化規(guī)則的元胞遺傳算法[J];電子學(xué)報;2010年07期
中國博士學(xué)位論文全文數(shù)據(jù)庫 前5條
1 陳洪龍;面向?qū)ο蟆獦?gòu)件的軟件動態(tài)演化技術(shù)研究[D];湖南大學(xué);2011年
2 黃萬艮;基于消息和構(gòu)件運算的軟件體系結(jié)構(gòu)演化研究[D];中南大學(xué);2008年
3 陳波;基于軟件體系結(jié)構(gòu)的構(gòu)件模型和語言研究[D];國防科學(xué)技術(shù)大學(xué);2007年
4 吳毅堅;面向網(wǎng)格服務(wù)的軟件體系結(jié)構(gòu)建模及演化研究[D];復(fù)旦大學(xué);2006年
5 李長云;基于體系結(jié)構(gòu)的軟件動態(tài)演化研究[D];浙江大學(xué);2005年
中國碩士學(xué)位論文全文數(shù)據(jù)庫 前6條
1 羅素芬;基于體系結(jié)構(gòu)的網(wǎng)構(gòu)軟件動態(tài)演化研究[D];華中師范大學(xué);2013年
2 李建宏;基于構(gòu)件的自組織軟件體系結(jié)構(gòu)研究[D];太原科技大學(xué);2009年
3 顏濤;基于反射技術(shù)的軟件動態(tài)演化方法[D];吉林大學(xué);2007年
4 馬維綱;基于軟件體系結(jié)構(gòu)的構(gòu)件組裝技術(shù)研究[D];西安理工大學(xué);2007年
5 王欣;基于Web服務(wù)和軟件體系結(jié)構(gòu)的構(gòu)件組裝技術(shù)的研究[D];哈爾濱工程大學(xué);2006年
6 李勇;軟件演化技術(shù)研究與應(yīng)用[D];大連理工大學(xué);2004年
本文關(guān)鍵詞:基于遺傳算法的軟件體系結(jié)構(gòu)動態(tài)演化方法研究,由筆耕文化傳播整理發(fā)布。
本文編號:354493
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/354493.html