[發(fā)明專利]多目標(biāo)編譯優(yōu)化序列選擇的代理建模方法有效
| 申請(qǐng)?zhí)枺?/td> | 202010869346.0 | 申請(qǐng)日: | 2020-08-26 |
| 公開(公告)號(hào): | CN112035116B | 公開(公告)日: | 2021-07-16 |
| 發(fā)明(設(shè)計(jì))人: | 江賀;高國(guó)軍;任志磊 | 申請(qǐng)(專利權(quán))人: | 大連理工大學(xué) |
| 主分類號(hào): | G06F8/41 | 分類號(hào): | G06F8/41;G06N3/12;G06N5/00 |
| 代理公司: | 大連理工大學(xué)專利中心 21200 | 代理人: | 李曉亮;潘迅 |
| 地址: | 116024 遼*** | 國(guó)省代碼: | 遼寧;21 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 多目標(biāo) 編譯 優(yōu)化 序列 選擇 代理 建模 方法 | ||
1.一種多目標(biāo)編譯優(yōu)化序列選擇的代理建模方法,其特征在于,包括以下步驟:
步驟1:編碼;
使用二進(jìn)制編碼來表示編譯優(yōu)化序列;針對(duì)編譯器GCC中二值型的編譯優(yōu)化選項(xiàng),在二進(jìn)制編碼字符串中,0表示不使用對(duì)應(yīng)位置的優(yōu)化選項(xiàng),1表示使用對(duì)應(yīng)位置的優(yōu)化選項(xiàng),采用固定順序的二進(jìn)制編碼即可滿足實(shí)際需求;
步驟2:采用隨機(jī)方法產(chǎn)生初始種群;
步驟3:構(gòu)造適應(yīng)度函數(shù);
針對(duì)編譯后可執(zhí)行代碼的運(yùn)行速度以及代碼規(guī)模進(jìn)行優(yōu)化:若使用編譯優(yōu)化序列進(jìn)行編譯后得到的程序大小為Sizei,其運(yùn)行速度為Speedi,未使用任何編譯優(yōu)化序列進(jìn)行編譯后得到的程序代碼規(guī)模和運(yùn)行速度分別為Size0、Speed0,則針對(duì)目標(biāo)可執(zhí)行代碼規(guī)模的適應(yīng)度函數(shù)為(Size0-Sizei)/Size0,針對(duì)目標(biāo)可執(zhí)行代碼運(yùn)行速度的適應(yīng)度函數(shù)為Speedi/Speed0;
步驟4:構(gòu)造代理模型數(shù)據(jù)集
隨機(jī)初始化種群之后,首先,對(duì)種群中每一個(gè)個(gè)體編碼對(duì)應(yīng)的編譯優(yōu)化序列,使用編譯優(yōu)化序列編譯程序,并執(zhí)行編譯后代碼獲取其運(yùn)行速度值以及代碼規(guī)模值;然后,由編譯優(yōu)化序列對(duì)應(yīng)的選項(xiàng)作為自變量,采用步驟3構(gòu)造的兩個(gè)適應(yīng)度函數(shù)獲得對(duì)應(yīng)運(yùn)行速度以及代碼規(guī)模的適應(yīng)度值,將其作為因變量,即編譯優(yōu)化序列選項(xiàng)為數(shù)據(jù)集中的特征值,運(yùn)行速度以及代碼規(guī)模對(duì)應(yīng)的適應(yīng)度值為數(shù)據(jù)集中的目標(biāo)值;最終,構(gòu)造得到用作訓(xùn)練代理模型的數(shù)據(jù)集;
步驟5:構(gòu)造代理模型
針對(duì)運(yùn)行速度和代碼規(guī)模兩個(gè)目標(biāo)分別構(gòu)造隨機(jī)森林模型作為代理模型,具體為:5.1),有放回的從步驟4構(gòu)造的數(shù)據(jù)集中隨機(jī)選擇與種群規(guī)模大小一致的數(shù)據(jù)用來訓(xùn)練一個(gè)決策樹;5.2),在決策樹的每個(gè)節(jié)點(diǎn)需要分裂時(shí)選擇一個(gè)特征作為該節(jié)點(diǎn)的分裂特征;5.3),決策樹的形成過程中每個(gè)節(jié)點(diǎn)按照上一步來分裂,一直到不能再分裂為止;最后,按照步驟5.1)-5.3)建立大量的決策樹,構(gòu)成得到隨機(jī)森林;
步驟6:快速非支配排序
根據(jù)種群中個(gè)體的非劣解對(duì)種群進(jìn)行分層,使搜索向Pareto最優(yōu)解集方向進(jìn)行,具體為:找出種群中的非支配解集,即第一非支配層;將第一非支配層中所有個(gè)體從整個(gè)種群中刪除,繼續(xù)從剩余種群中找到非支配解集,即第二非支配層;如此循環(huán)往復(fù)直至種群中所有個(gè)體都被分層,而同一分層內(nèi)所有個(gè)體具有同樣的非支配序值,進(jìn)而區(qū)分優(yōu)秀解和非優(yōu)秀解;
步驟7:進(jìn)行選擇、進(jìn)化操作得到子種群
7.1):選擇操作
采用競(jìng)標(biāo)賽選擇方式選擇下一代個(gè)體,7.1.1),從種群中隨機(jī)選擇兩個(gè)個(gè)體構(gòu)成一組;7.1.2),根據(jù)每個(gè)個(gè)體的適應(yīng)度值,選擇其中適應(yīng)度值最好的個(gè)體進(jìn)入子代種群;最后,重復(fù)7.1.1)-7.1.2)步驟直至構(gòu)造好子種群;
7.2)進(jìn)化操作
采用單點(diǎn)交叉的方式進(jìn)行交叉操作,在種群中每個(gè)個(gè)體對(duì)應(yīng)的二進(jìn)制編碼串中隨機(jī)設(shè)置一個(gè)交叉點(diǎn),然后交換兩個(gè)配對(duì)個(gè)體的部分編碼串,最終每個(gè)個(gè)體形成兩個(gè)新的個(gè)體;
步驟8:采用代理模型計(jì)算新種群的近似適應(yīng)度值
采用運(yùn)行速度和代碼規(guī)模兩個(gè)目標(biāo)對(duì)應(yīng)的代理模型計(jì)算經(jīng)過步驟7選擇、交叉后產(chǎn)生的新種群中所有個(gè)體的近似適應(yīng)度值,針對(duì)新種群中的優(yōu)秀解通過實(shí)際編譯獲取其實(shí)際適應(yīng)度值;
步驟9:更新代理模型;
將新種群中優(yōu)秀解的實(shí)際適應(yīng)度值與原有種群所有編譯優(yōu)化序列優(yōu)化效果數(shù)據(jù)合并,進(jìn)而更新代理模型;
步驟10:產(chǎn)生下一代種群
將原種群與新種群合并,并對(duì)其進(jìn)行快速非支配排序,選擇效果更優(yōu)的個(gè)體組成下一代種群;
步驟11:判斷是否達(dá)到迭代終止條件,即算法運(yùn)行過程中實(shí)際適應(yīng)度值計(jì)算次數(shù)到達(dá)指定次數(shù);若達(dá)到了終止條件,則終止迭代;否則,轉(zhuǎn)到步驟6,繼續(xù)迭代過程;
步驟12:迭代終止,獲得Pareto最優(yōu)解集,進(jìn)而獲得待編譯程序在代碼規(guī)模和運(yùn)行速度兩個(gè)目標(biāo)上合適的編譯優(yōu)化序列。
2.根據(jù)權(quán)利要求1所述的一種多目標(biāo)編譯優(yōu)化序列選擇的代理建模方法,其特征在于,所述步驟2中,在構(gòu)造代理模型的過程中采用支持向量機(jī)或Kriging模型作為代理模型。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于大連理工大學(xué),未經(jīng)大連理工大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010869346.0/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 用于實(shí)現(xiàn)多目標(biāo)方業(yè)務(wù)或操作的方法和裝置
- 基于智能視頻分析平臺(tái)的多目標(biāo)跟蹤方法及其系統(tǒng)
- 多目標(biāo)設(shè)計(jì)選擇方法和系統(tǒng)
- 一種針對(duì)多目標(biāo)的地面導(dǎo)航系統(tǒng)及其方法
- 一種無斷點(diǎn)多目標(biāo)信號(hào)合成方法
- 基于多智能體深度增強(qiáng)學(xué)習(xí)的多目標(biāo)跟蹤方法
- 一種多目標(biāo)跟蹤方法
- 一種航空紅外視頻多目標(biāo)檢測(cè)與跟蹤方法及裝置
- 一種多目標(biāo)推薦方法、多目標(biāo)推薦模型生成方法以及裝置
- 一種區(qū)域多目標(biāo)衛(wèi)星探測(cè)仿真方法及系統(tǒng)
- 一種軟件開發(fā)中的自動(dòng)化編譯方法及系統(tǒng)
- 一種動(dòng)態(tài)分配編譯機(jī)的系統(tǒng)及其方法
- 一種實(shí)現(xiàn)安卓編譯隔離的方法和系統(tǒng)
- 調(diào)度服務(wù)器、編譯服務(wù)器及分布式編譯方法
- 代碼編譯方法、編譯設(shè)備、存儲(chǔ)介質(zhì)及裝置
- 文件編譯方法、裝置、編譯設(shè)備及存儲(chǔ)介質(zhì)
- 一種編譯方法、裝置及系統(tǒng)
- 一種編譯方法和相關(guān)裝置
- 一種編譯方法、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種代碼編譯方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)





