一種基于遺傳算法的體系結(jié)構(gòu)自動(dòng)優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)和優(yōu)化方法領(lǐng)域,特別設(shè)及一種基于遺傳算法的體 系結(jié)構(gòu)自動(dòng)優(yōu)化方法。
【背景技術(shù)】
[0002] 隨著社會(huì)和技術(shù)的發(fā)展,許多業(yè)務(wù)領(lǐng)域的系統(tǒng)越來越復(fù)雜,具體表現(xiàn)在覆蓋范圍 更廣、要素類型更多、結(jié)構(gòu)關(guān)系更雜。為了將規(guī)模龐大、業(yè)務(wù)繁多、關(guān)系復(fù)雜的信息系統(tǒng)優(yōu)化 整合,構(gòu)建成有機(jī)協(xié)同、高效運(yùn)行的體系,就必須在系統(tǒng)思想指導(dǎo)下,采用科學(xué)合理的方法 對(duì)系統(tǒng)進(jìn)行設(shè)計(jì)。體系結(jié)構(gòu)設(shè)計(jì)就是對(duì)復(fù)雜系統(tǒng)和"系統(tǒng)之系統(tǒng)"進(jìn)行設(shè)計(jì)的方法,它對(duì)系 統(tǒng)各組成部分(軟件、硬件、數(shù)據(jù)、活動(dòng)、人員、機(jī)構(gòu)等)及它們之間的搭配和排列(層次、布 局、邊界、接口關(guān)系等)進(jìn)行設(shè)計(jì)。隨著體系結(jié)構(gòu)設(shè)計(jì)理論發(fā)展,產(chǎn)生了一些不同領(lǐng)域的體系 結(jié)構(gòu)框架和設(shè)計(jì)方法,用來指導(dǎo)和規(guī)范體系結(jié)構(gòu)設(shè)計(jì)過程和設(shè)計(jì)成果,例如化e Open Group提出的《開放組織體系結(jié)構(gòu)框架(TOGAF)》和美國國防部提出的《國防部體系結(jié)構(gòu)框架 (DoDAF)》等。
[0003] 由于體系結(jié)構(gòu)設(shè)計(jì)工作的困難程度,在完成初步設(shè)計(jì)方案后,對(duì)其進(jìn)行驗(yàn)證評(píng)估 和優(yōu)化是必不可少的。目前驗(yàn)證評(píng)估方法主要關(guān)注設(shè)計(jì)方案的正確性、完備性、一致性,W 及是否能滿足功能性能需求;而對(duì)系統(tǒng)的高效性、抗毀性等非功能需求的驗(yàn)證評(píng)估較為薄 弱,主要采用試驗(yàn)仿真的方法進(jìn)行評(píng)估,并由具備領(lǐng)域知識(shí)的設(shè)計(jì)人員在分析評(píng)估結(jié)果后 對(duì)初步方案進(jìn)行反復(fù)優(yōu)化。此類方法應(yīng)用于"范圍廣、要素多、關(guān)系雜"的復(fù)雜系統(tǒng),存在時(shí) 間花費(fèi)多、人力成本大、優(yōu)化效率低等問題。
【發(fā)明內(nèi)容】
[0004] 發(fā)明目的:本發(fā)明針對(duì)復(fù)雜系統(tǒng)的體系結(jié)構(gòu)優(yōu)化問題,提出一種基于遺傳算法的 體系結(jié)構(gòu)自動(dòng)優(yōu)化方法,對(duì)系統(tǒng)的高效性、抗毀性等非功能特性進(jìn)行優(yōu)化。
[0005] 為了解決上述技術(shù)問題,本發(fā)明公開了一種基于遺傳算法的體系結(jié)構(gòu)自動(dòng)優(yōu)化方 法,包括如下步驟:
[0006] 步驟1,構(gòu)建網(wǎng)絡(luò)模型;
[0007] 步驟2,進(jìn)行非功能特性度量;
[000引步驟3,確定綜合評(píng)估函數(shù)、優(yōu)化約束條件和終止條件;
[0009]步驟4,進(jìn)行基于遺傳算法的自動(dòng)優(yōu)化。
[0010] 其中,步驟1包括如下步驟:
[0011] 步驟1-1,在系統(tǒng)的體系結(jié)構(gòu)初步設(shè)計(jì)方案中,某些非功能特性(如高效性、魯棒性 等)可能不滿足用戶需求或合同要求,因此需要進(jìn)行優(yōu)化。將需要優(yōu)化的某非功能特性記為 P,從體系結(jié)構(gòu)設(shè)計(jì)方案中選取設(shè)及到P的視圖作為優(yōu)化對(duì)象;
[0012] 步驟1-2,視圖建模:將視圖中的要素(機(jī)構(gòu)、系統(tǒng)或子系統(tǒng))抽象為節(jié)點(diǎn),將要素之 間的關(guān)系(如組織關(guān)系、信息交互關(guān)系)抽象為節(jié)點(diǎn)之間的邊,從而將視圖轉(zhuǎn)換為網(wǎng)絡(luò)模型。
[0013] 在步驟1-1中視圖的選擇需要依據(jù)體系結(jié)構(gòu)設(shè)計(jì)方案中各視圖所描述的對(duì)象和功 能,并結(jié)合需要優(yōu)化的非功能特性進(jìn)行具體分析。例如,某體系結(jié)構(gòu)設(shè)計(jì)方案采用美國國防 部體系結(jié)構(gòu)框架(DoDAF)作為規(guī)范,那么如果需要對(duì)組織關(guān)系進(jìn)行優(yōu)化,可就W選擇組織關(guān) 系圖(0V-4)作為優(yōu)化對(duì)象;如果需要對(duì)信息系統(tǒng)的高效性或抗毀性進(jìn)行優(yōu)化,就可W選擇 系統(tǒng)接口描述圖(SV-1)作為優(yōu)化對(duì)象。
[0014] 步驟1-2中將視圖中的要素抽象成的節(jié)點(diǎn)的集合記為¥=^1,乂2,...,乂。1},乂。1為第 nl個(gè)節(jié)點(diǎn),將節(jié)點(diǎn)之間的關(guān)系抽象成的邊的集合記為E={ei,e2, . . .,en2},en2為第n2個(gè)邊, 將視圖轉(zhuǎn)換的網(wǎng)絡(luò)模型記為G = <V,E〉。^分布式計(jì)算系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)為例,系統(tǒng)視圖 所包含的網(wǎng)絡(luò)設(shè)備、存儲(chǔ)設(shè)備、計(jì)算設(shè)備等可W抽象為節(jié)點(diǎn)集合V ={ Vi惟1,Vi惟2,V存儲(chǔ)1, V踩各1. ..},集合中的每個(gè)節(jié)點(diǎn)對(duì)應(yīng)了一個(gè)設(shè)備,如胃1代表了 1號(hào)計(jì)算設(shè)備。設(shè)備間的數(shù)據(jù)傳 輸關(guān)系可W抽象為邊的集合E={ei惜1補(bǔ)#2,ei惜1陳祖,...},集合中的每條邊對(duì)應(yīng)了一個(gè)數(shù)據(jù) 傳輸關(guān)系,如ei借1窗麼代表了 1號(hào)計(jì)算設(shè)備到2號(hào)存儲(chǔ)設(shè)備間的數(shù)據(jù)傳輸關(guān)系。
[001引步驟2包括:
[0016] 步驟2-1,基于平均最短路徑、介數(shù)、聚集系數(shù)等網(wǎng)絡(luò)模型常用度量指標(biāo),選擇與步 驟1-1中指定的非功能特性P相關(guān)的網(wǎng)絡(luò)模型度量指標(biāo),對(duì)步驟1-2中得到的網(wǎng)絡(luò)模型進(jìn)行 度量。
[0017] 步驟2-1中將選擇的相關(guān)網(wǎng)絡(luò)模型度量指標(biāo)分別進(jìn)行歸一化,記為I(G) = {ii(G), i2(G),. ..,in3(G)},其中,1(G)為指標(biāo)集合,指標(biāo)集合中的 il(G) 42(G),...,in3(G)為歸一 化后的各項(xiàng)度量指標(biāo),in3(G)為第n3個(gè)指標(biāo)。
[001引步驟3包括如下步驟:
[0019] 步驟3-1,將步驟2-1中選擇的各相關(guān)指標(biāo)的度量進(jìn)行綜合,形成綜合評(píng)估函數(shù),對(duì) 步驟1-1中指定的非功能特性P進(jìn)行綜合度量;在遺傳算法領(lǐng)域該綜合評(píng)估函數(shù)也可被稱為 適應(yīng)度函數(shù)。
[0020] 步驟3-2,根據(jù)實(shí)際需求和優(yōu)化代價(jià)等多方面因素,確定優(yōu)化的約束條件;約束條 件通常規(guī)定了候選優(yōu)化方案某些指標(biāo)的最低或最高范圍,限制了優(yōu)化過程中候選優(yōu)化方案 的可行域。
[0021] 步驟3-3,根據(jù)實(shí)際需求和優(yōu)化代價(jià)等多方面因素,確定優(yōu)化的終止條件。終止條 件通常包括優(yōu)化的目標(biāo)需求,迭代的最大次數(shù)等等。
[0022] 步驟3-1中所述綜合評(píng)估函數(shù)是對(duì)步驟2-1中選擇的相關(guān)網(wǎng)絡(luò)模型度量指標(biāo)的綜 合,記為F(G)=f[I(G)],其中f為如下幕平均合成函數(shù)。
[0023]
[0024] 式中,為步驟2-1中定義的第j項(xiàng)歸一化后的度量指標(biāo);wj為第j項(xiàng)指標(biāo)的權(quán)重;k 為幕平均階數(shù),取值范圍為任意實(shí)數(shù),最常見的有四種,即k=l(算數(shù)平均合成模型),k = 2 (平方平均合成模型),k=l(調(diào)和平均合成模型),k = 0(幾何平均合成模型)。例如取k=l, 即采用算數(shù)平均進(jìn)行合成,貝U
[0025]
[00%]步驟3-2中的各項(xiàng)約束條件記為:
[0027]
[0028] 其中Gspace代表所有的候選優(yōu)化方案組成的集合,α和β為用戶規(guī)定的系統(tǒng)應(yīng)當(dāng)滿足 的技術(shù)指標(biāo),h^G)〉a表示候選優(yōu)化方案G的某個(gè)指標(biāo)hj必須大于a,hk(G)〉i3表示候選優(yōu)化方 案G的某個(gè)指標(biāo)hk必須大于β。
[0029] 步驟3-3中的終止條件包含多方面因素,例如:要求優(yōu)化后的系統(tǒng)非功能特性Ρ的 綜合度量指標(biāo)大于某個(gè)設(shè)定的闊值t,記為F(G)〉t;或優(yōu)化的總迭代次數(shù)小于某個(gè)闊值Ν,記 為 MaxIte;r<N。
[0030] 步驟4包括如下步驟:
[0031 ]步驟4-1,將優(yōu)化過程中的候選優(yōu)化方案編碼為遺傳算法可處理的候選解,并根據(jù) 步驟3-2中確定優(yōu)化的約束條件確定候選解的可行解空間;
[0032] 步驟4-2,確定遺傳算法交叉、變異、選擇的策略,產(chǎn)生候選解集;
[0033] 步驟4-3,采用步驟3-1中的綜合評(píng)估函數(shù)對(duì)步驟4-2中產(chǎn)生的候選解集中的解進(jìn) 行評(píng)估,并結(jié)合步驟3-3中確定優(yōu)化的終止條件,判斷當(dāng)前解集中最優(yōu)解是否已經(jīng)達(dá)到優(yōu)化 的目標(biāo)需求,或者已經(jīng)達(dá)到最大迭代次數(shù)等其它終止條件。如果已經(jīng)滿足終止條件,則輸出 當(dāng)前最優(yōu)解對(duì)應(yīng)的設(shè)計(jì)方案作為最終的體系結(jié)構(gòu)優(yōu)化設(shè)計(jì)方案,否則返回步驟4-2繼續(xù)產(chǎn) 生候選解集。
[0034] 步驟4-1中,為了適合遺傳算法進(jìn)行處理,將候選優(yōu)化方案G編碼為數(shù)組形式的候 選解,記為encode(G) = x,數(shù)組的每一種取值唯一對(duì)應(yīng)了一種設(shè)計(jì)方案,數(shù)組