国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于多層次信息反饋的多目標混合蛙跳算法的制作方法

      文檔序號:12271268閱讀:328來源:國知局

      本發(fā)明屬于數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種基于多層次信息反饋的多目標混合蛙跳算法。



      背景技術(shù):

      現(xiàn)實世界的許多工程及科學研究中,多目標優(yōu)化(multi-objective optimization problems, MOP)是必須要解決的關(guān)鍵問題,至今都還沒有非常有效的求解方法。區(qū)別于單目標優(yōu)化問題, MOP由于其存在的廣泛性及求解的困難性,加之不同設(shè)計條件對各目標有著不同權(quán)重要求,且各目標之間的量綱和數(shù)量級不同,基于傳統(tǒng)數(shù)學理念設(shè)計的多目標優(yōu)化方法應(yīng)用于實際問題中往往表現(xiàn)出一定的脆弱性。這是因為,MOP往往存在多個相互沖突的目標,一個目標性能的改善可能會引起另一個或多個目標性能的下降,要使所有目標都同時達到最優(yōu)往往是不可能的。例如,城市地鐵線路系統(tǒng)的設(shè)計不僅要對目前居民定居點有清晰的認識,而且也要綜合考慮今后的城市規(guī)劃、線路容納量和運營效益等目標來選擇最優(yōu)的建設(shè)方案;調(diào)度作業(yè)中設(shè)備負荷量、設(shè)備使用率、人員分配率等也可以作為優(yōu)化調(diào)度中的待優(yōu)化目標;汽車齒輪變速箱的設(shè)計,不僅要求零件結(jié)構(gòu)緊湊且重量盡可能輕,而且對產(chǎn)品材料總成本、機器運轉(zhuǎn)噪音量、零件強度與使用壽命等都提出了明確要求??梢?,MOP中各個目標之間是相制約和排斥的,只能夠通過折中的方法使所有目標盡可能達到最優(yōu),每個扣中解稱之為非劣支配解,折中解的集合被稱為Pareto最優(yōu)解,其在目標空間的映射稱為Pareto最優(yōu)前沿。此外,隨著維數(shù)的增加,各類MOP的動態(tài)、非線性及不可微等特性將會導(dǎo)致多目標優(yōu)化計算的復(fù)雜度和搜索空間急劇遞增,難以找到一種適合于不同MOP求解的通用方法,所有這些使得MOP的求解已成為目前國內(nèi)外優(yōu)化計算領(lǐng)域最難解決的熱點問題之一。

      相比傳統(tǒng)優(yōu)化方法對目標函數(shù)和約束函數(shù)的嚴格要求,基于種群的仿生類算法可以并行地搜索解空間中的多個解,適合于MOP的求解。混合蛙跳算法(shuffled frog Leaping algorithm, SFLA)是由Eusuff等于2003年提出的一種模擬青蛙覓食行為的群體智能優(yōu)化方法。其核心思想是子簇蛙群間的局部搜索和各子簇間的全局信息交換,促進整個種群的發(fā)展,最終實現(xiàn)目標尋優(yōu)。在局部搜索過程中,最差個體受局部最優(yōu)個體或全局最優(yōu)個體的差異進行位置更新。由于更新存在隨機性,故對多模態(tài)等函數(shù)尋優(yōu)時,往往使得SFLA后期搜索過程出現(xiàn)收斂速慢,解的精度不高等問題。對此,不同學者從不同角度對SFLA應(yīng)用于MOP求解提出了許多不同的改進方案。孫輝等提出一種微粒群與混合蛙跳融合的群體智能算法(孫輝,龍騰,趙嘉. 微粒群與混合蛙跳融合的群體智能算法,2012,32(2):428-431),算法中引入了蛙群和微粒群群體,在兩群體間設(shè)計了一種信息替換策略和兩群之間的協(xié)作方式,有效提高了全局搜索能力及收斂速度。李邐等提出了一種基于混沌策略和動態(tài)自適應(yīng)的云調(diào)度研究(李邐,姚曄,李鐵。基于混沌策略和動態(tài)自適應(yīng)的云調(diào)度研究。計算機應(yīng)用研究,2014,31(6):1824-1827).通過在蛙群的子群劃分階段引入混沌策略,在內(nèi)部搜索引入反向?qū)W習策略,以及全局信息交換過程引入動態(tài)自適應(yīng)因子等方法,很好的改進了蛙跳算法的收斂性,縮短了全局搜索和優(yōu)化的時間。張瀟丹等提出一種基于分子動力學模擬的改進混合蛙跳算法(張瀟丹,胡峰,趙力,鄒采榮. 基于分子動力學模擬的改進混合蛙跳算法, 2012,27(3):327-332), 該算法在兩群體間引入了一種新的分子間作用力計算方法,利用Velocity-Verlet算法和高斯變異算子代替基本混合蛙跳算法的更新策略,有效地平衡了種群的多樣性的搜索的高效性。Luo等在子群內(nèi)部搜索策略中引入搜索加速因子,提高了算法的全局尋優(yōu)能力(Luo P, Lu Q. Modified shuffled frog leaping algorithm based on new searching strategy. Proc of the 7th International Conference on Natural Computation, 2011:1346-1350.)。這些算法雖然在同程度改進了算法的收斂速度和解的精度不高等問題。但就其效果而言,并不是很理想。

      粒子群優(yōu)化算法(Particle swarm optimization, PSO)是由Kennedy等于1995提出的一種模擬鳥群覓食行為的群體智能優(yōu)化方法。其核心思想是通過粒子之間的信息共享交流機制,相互學習,相互促進,使得整個種群朝著最優(yōu)解的方向不斷趨近,直至最終達到最優(yōu)解及其鄰近區(qū)域。由于PSO算法簡單易于實現(xiàn),收斂速度較快,已在各不同優(yōu)化計算領(lǐng)域獲得較好的成功應(yīng)用。特別是近年來,不同學者嘗試在其它不同智能優(yōu)化方法和PSO之間相互借鑒各自優(yōu)點,提出多種不同的改進混合智能優(yōu)化方法,并應(yīng)用于科學及工程的理論及實踐研究。如,楊寧等提出一種基于多層次信息交互的多目標粒子群優(yōu)化算法。該算法中融入了遺傳算法中交叉算子,以增強粒子的收斂性(楊寧,霍炬,楊明.基于多層次信息交互的多目標粒子群優(yōu)化算法,2016,31(5):907-912)。Hendtalass等將螞蟻算法和PSO進行融合應(yīng)用于離散優(yōu)化問題,以增強螞蟻對最優(yōu)解的搜索性能(Hendtlass T, Randall M. A survey of ant colony and particle swarm meta-heuristics and their application to discrete optimizzation problem. Proceedings of the Inaugural Workshop on Artificial Life, 2001:15-25). Lovbjerg等將進算法和粒子群優(yōu)化算法進行混合,將進化算法中的繁殖和子種群的概念第入粒子群優(yōu)化算法,建立了兩種混合型粒子群優(yōu)化器,增強了算法的收斂速度和尋優(yōu)解的能力(Lovbjerg M, Rasmussen T K, Krink T. Hybrid particle swarm optimization with breeding and subpopulations. Proceedings of the Genetic and Evolutionary computaiton Conference, 2001:469-476)。可見,以上算法都要不同程度結(jié)合了PSO算法搜索速度快等特點,但就PSO本身而言,也存在著算法易陷入早熟,搜索過早收斂等特點。

      傳統(tǒng)數(shù)學優(yōu)化方法應(yīng)用于復(fù)雜系統(tǒng)多目標優(yōu)化問題(multi-objective optimization problems, MOP)時,由于不同設(shè)計條件對各目標有著不同權(quán)重要求,且各目標之間的量綱和數(shù)量級不同,需要優(yōu)化的多個目標之間常常存在著沖突性,因此基于傳統(tǒng)數(shù)學理念設(shè)計的多目標優(yōu)化方法應(yīng)用于實際問題中難以對MOP進行有效的處理。



      技術(shù)實現(xiàn)要素:

      本發(fā)明的目的在于提供一種基于多層次信息反饋的多目標混合蛙跳算法,旨在解決背景技術(shù)提及的問題。

      本發(fā)明是這樣實現(xiàn)的,一種基于多層次信息反饋的多目標混合蛙跳算法,該基于多層次信息反饋的多目標混合蛙跳算法進行標準混合蛙跳優(yōu)化層﹑青蛙進化與學習層﹑外部檔案信息交換層的優(yōu)化;

      所述標準混合蛙跳優(yōu)化層用于獲得青蛙的新位置,同時對新位置與舊位置進行優(yōu)劣對比;若新位置劣于舊位置,則進入青蛙進化與學習層;

      所述青蛙進化與學習層融入GA中交叉算子和PSO中的粒子學習策略,通過青蛙進化及對種群全局最優(yōu)青蛙的學習,獲得青蛙新的位置;

      在優(yōu)化過程中獲得Pareto支配解存儲到一個外部檔案中;在每次迭達結(jié)束后,根據(jù)預(yù)定的策略從外部檔案中提取一定數(shù)目的非支配解進行信息交換,提高檔案中解的質(zhì)量,為以后的青蛙尋優(yōu)及青蛙進化與學習提供全局最優(yōu)解。

      進一步,所述多層次信息反饋的多目標混合蛙跳算法具體步驟包括:

      Step1: 初始化青蛙各子群體Popi(i=1,2,...,m);

      Step2: 使用標準混合蛙跳優(yōu)化層進行局部搜索,更新最差青蛙位置;

      Step3: 若最差青蛙位置沒有得到更新,則進行青蛙進化與學習層,以改善青蛙最差位置,促使整個種群朝著全局最優(yōu)Pareto前沿前進;

      Step4: 將學習層得到的非支配解按外部檔案信息交換策略送入檔案中,并同時確保檔案的容量沒有超出;

      Step5: 判斷設(shè)定的迭達次數(shù)是否結(jié)束,若沒有,將各子群重新合成新一代種群并排序和劃分子族群,返回Step2。

      進一步,所述標準混合蛙跳優(yōu)化層算法為:

      該標準混合蛙跳優(yōu)化層使用SFLA方法搜索青蛙的新位置;

      所述SFLA方法為:有P只青蛙在d維搜索空間隨機搜索食物;隨機設(shè)定青蛙位置,并按適應(yīng)值排序;將整個群體分為K個子群,其中,排序第1的青蛙進入第1個子群,排序第2的進入第2個子群,排序第M的進入第M個子群,排序第M+1的進入第1個子群,排序第M+2的進入第2個子群,依次類推,直至全部青蛙分別進入對應(yīng)子群;

      每個子群體按自己的思想進行局部搜索,得到最好青蛙位置Pb和最差青蛙位置Pw;全群最好青蛙位置Pg為各子群體中最好的個體。各子群局部搜索的目的就是按下式(1)-(2)更新最差青蛙位置;

      Di=rand()(Pb-Pw) (1),

      Pnew=Pw+Di (2);

      其中,rand()是介于0和1間的隨機數(shù);Di表示最差青蛙在第i維移動的距離,其更新移動的步長介于dmindmax之內(nèi);Pnew為最差青蛙移動后的新位置;如果按式(1)-(2)不能改善青蛙位置,則使用Pg代替(1)中Pb;若再不能改善,則隨機產(chǎn)生一個解;若新得到的位置仍不能改善,則進入到青蛙進化與學習層。

      進一步,所述青蛙進化與學習層算法為:

      青蛙各子群體進行局部搜索后,對最差青蛙位置進行更新;若在規(guī)定次數(shù)內(nèi),不能改善最差青蛙位置,該青蛙進化與學習層進化交叉操作與最優(yōu)學習策略引入到MSFLA中;

      僅在一次迭達完成后,判斷青蛙的新位置 Pnew是否優(yōu)于舊位置,若沒有,則進行青蛙的進化與學習。

      進一步,設(shè)定外部檔案能容納的支配解數(shù)目為L,外部檔案信息交換策略的算法包括以下步驟:

      步驟一:若外部檔案未滿,則青蛙進化及最佳學習過程結(jié)束產(chǎn)生的非支配解直接進入外部檔案;

      步驟二:若外部檔案已滿,則青蛙進化及最佳學習過程結(jié)束后的非支配解x按下述規(guī)則擇優(yōu)進入;

      (1)若xPareto優(yōu)于外部檔案中的某一非支配個體y,則x取代y直接進入外部檔案,并轉(zhuǎn)步驟(3)

      (2)若η(x,y)>Θ(x,y)(見定義1),則x取代y直接進入外部檔案;否則,若r≥0.9則x取代y進入外部檔案,其中,r為介于0和1之間的隨機數(shù);

      (3)對外部檔案中兩兩個體之間的優(yōu)越數(shù)進行統(tǒng)計,優(yōu)越數(shù)最大的個體為全局最優(yōu)個體Pg,該個體將參與下一次算法進化過程。

      進一步,所述若沒有,則進行青蛙的進化與學習中,進行青蛙的進化與學習步驟包括:

      第一步:將青蛙的新位置 Pnew與對應(yīng)的舊位置Pw進行遺傳交叉操作,得到青蛙的新位置Pnew_1, Pnew_2;

      第二步:計算青蛙位置PnewPnew_1Pnew_2的適應(yīng)值,將適應(yīng)度最高的位置標記為Pnew_3;

      第三步:比較青蛙位置Pnew_3Pw, 若Pnew_3更優(yōu),則Pnew_3作為最差青蛙的新位置,促進算法的收斂,并轉(zhuǎn)至第七步;否則,轉(zhuǎn)至第四步進行粒子舊位置Pw對全局最優(yōu)PgPb的同時學習;

      第四步:根據(jù)PSO中粒子的學習策略,使用以下公式(3)得到青蛙新的位置Pnew_4,

      Pnew_4=r1×(Pb-Pw)+r2×(Pg-Pw) (3)

      其中,r1,r2是兩個隨機數(shù);該學習策略借簽了PSO中粒子群體的自我學習策略,使得子群體中的最差青蛙同時向全局最優(yōu)PgPb進行并行學習;

      第五步:計算青蛙Pnew_3Pnew_4的適應(yīng)值,從中選出適應(yīng)度最高的青蛙位置,記為NP;

      第六步:比較NP和Pw,如果NP更優(yōu),則NP作為最差青蛙新位置以促進算法收斂;如果NP和Pw的適應(yīng)值相等或無法比較,則保存NP作為最差青蛙的位置以提高算法的收斂性;否則,仍以Pw作為青蛙的位置;

      第七步:青蛙進化及最佳學習結(jié)束。

      本發(fā)明提供的基于多層次信息反饋的多目標混合蛙跳,與傳統(tǒng)的求解復(fù)雜系統(tǒng)的多目標優(yōu)化方法相比,本發(fā)明方法具有直觀簡明、普適性等特點。首先本方法是在基本混合蛙跳算法基礎(chǔ)上,引入遺傳交叉操作至青蛙的進化與學習層,充分利用了迭達過程中所得到的青蛙位置的全部信息。其次,對全局最優(yōu)青蛙位置Pg信息的更新采用了PSO中的粒子優(yōu)化學習更新策略,避免了青蛙局部搜索中的單一子群體局部學習,有力地增強了青蛙跳出局部最優(yōu)解的能力。最后,本發(fā)明描述的外部檔案信息交換策略極大增強了外部檔案中非支配解的多樣性和收斂性,對算法的性能產(chǎn)生了直接的影響。所提出發(fā)明方法通過對不同標準測試案例得到的結(jié)果分析,均驗證了本發(fā)明描述的MSFLA具有較強的魯棒性及普適性。

      本發(fā)明的一種基于多層次信息反饋的多目標混合蛙跳算法(Multi-objective Shuffled Frog Leaping Algorithm based on the interation of multi-level information, MSFLA),使用遺傳算法的交叉算子及PSO的粒子學習方式等特性,將整個優(yōu)化過程劃分為標準混合蛙跳優(yōu)化層﹑青蛙進化與學習層﹑外部檔案信息交換層。

      標準混合蛙跳優(yōu)化層保證青蛙進行正常的局部搜索優(yōu)化;青蛙進化與學習層保證青蛙每次迭達結(jié)束時都能得到更好的自身位置;外部檔案信息交換層可以保證青蛙種群獲得全局最優(yōu)解。MSFLA各個層次之間通過信息反饋和交換機制,共同促進搜索朝著最優(yōu)解方向進行,增強了算法的多樣性并加快了其收斂特性。本發(fā)明方法基于典型的混合蛙跳算法(shuffled frog Leaping algorithm, SFLA)模型,對于各類工程及科學理論研究的多目標優(yōu)化問題具有較好的通用性、有效性和穩(wěn)健性等特點,區(qū)別于傳統(tǒng)多目標優(yōu)化方法求解復(fù)雜計算困難問題遇到的目標間沖突、各目標權(quán)重不一致等問題,本發(fā)明所提出算法具有良好的搜索性能,能快速﹑有效地求解多目標優(yōu)化問題。

      本發(fā)明可以應(yīng)用于許多工業(yè)場合,如車間作業(yè)調(diào)度﹑應(yīng)急資源調(diào)度﹑云計算資源調(diào)度等問題。MSFL各個層次之間通過信息反饋和交換,共同促進搜索朝著Pareto最優(yōu)解方向加快進行,共同提高了算法的收斂性和多樣性。

      附圖說明

      圖1是本發(fā)明實施例提供的基于多層次信息反饋的多目標混合蛙跳算法流程圖。

      具體實施方式

      為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

      下面結(jié)合附圖對本發(fā)明的應(yīng)用原理作進一步描述。

      如圖1所示:本發(fā)明實施例提供的基于多層次信息反饋的多目標混合蛙跳算法,進行標準混合蛙跳優(yōu)化層﹑青蛙進化與學習層﹑外部檔案信息交換層的優(yōu)化;

      所述標準混合蛙跳優(yōu)化層用于獲得青蛙的新位置,同時對新位置與舊位置進行優(yōu)劣對比;若新位置劣于舊位置,則進入青蛙進化與學習層;

      所述青蛙進化與學習層融入GA中交叉算子和PSO中的粒子學習策略,通過青蛙進化及對種群全局最優(yōu)青蛙的學習,獲得青蛙新的位置;

      在優(yōu)化過程中獲得Pareto支配解存儲到一個外部檔案中;在每次迭達結(jié)束后,根據(jù)預(yù)定的策略從外部檔案中提取一定數(shù)目的非支配解進行信息交換,提高檔案中解的質(zhì)量,為以后的青蛙尋優(yōu)及青蛙進化與學習提供全局最優(yōu)解。

      進一步,所述多層次信息反饋的多目標混合蛙跳算法具體步驟包括:

      Step1: 初始化青蛙各子群體Popi(i=1,2,...,m);

      Step2: 使用標準混合蛙跳優(yōu)化層進行局部搜索,更新最差青蛙位置;

      Step3: 若最差青蛙位置沒有得到更新,則進行青蛙進化與學習層,以改善青蛙最差位置,促使整個種群朝著全局最優(yōu)Pareto前沿前進;

      Step4: 將學習層得到的非支配解按外部檔案信息交換策略送入檔案中,并同時確保檔案的容量沒有超出;

      Step5. 判斷設(shè)定的迭達次數(shù)是否結(jié)束,若沒有,將各子群重新合成新一代種群并排序和劃分子族群,返回Step2。

      下面結(jié)合實施例對本發(fā)明應(yīng)用原理進一步說明。

      本發(fā)明實施實例提供的基于多層次信息反饋的多目標混合蛙跳算法(Multi-objective Shuffled Frog Leaping Algorithm based on the interation of multi-level information, MSFL)

      在MSFL優(yōu)化中,分為標準混合蛙跳優(yōu)化層﹑青蛙進化與學習層﹑外部檔案信息交換層的優(yōu)化;標準混合蛙跳優(yōu)化層用于獲得青蛙的新位置,同時對新位置與舊位置進行優(yōu)劣對比;若新位置劣于舊位置,則進入青蛙進化與學習層,該青蛙進化與學習層融入GA中交叉算子和PSO中的粒子學習策略,通過青蛙進化及對種群全局最優(yōu)青蛙的學習,獲得青蛙更好的新位置;在優(yōu)化過程中獲得Pareto支配解存儲到一個外部檔案中;在每次迭達結(jié)束后,根據(jù)預(yù)定的策略從外部檔案中提取一定數(shù)目的非支配解進行信息交換,提高檔案中解的質(zhì)量,為以后的青蛙尋優(yōu)及青蛙進化與學習提供全局最優(yōu)解。

      1)標準混合蛙跳優(yōu)化層

      該層主要使用SFLA方法搜索青蛙的新位置,設(shè)想有這樣一種場景:有P只青蛙在d維搜索空間隨機搜索食物。隨機設(shè)定青蛙位置,并按適應(yīng)值排序,將整個群體分為K個子群,其中,排序第1的青蛙進入第1個子群,排序第2的進入第2個子群,排序第M的進入第M個子群,排序第M+1的進入第1個子群,排序第M+2的進入第2個子群,依次類推,直至全部青蛙分別進入對應(yīng)子群。

      每個子群體按自己的思想進行局部搜索,得到最好青蛙位置Pb和最差青蛙位置Pw;全群最好青蛙位置Pg為各子群體中最好的個體。各子群局部搜索的目的就是按下式(1)-(2)更新最差青蛙位置。

      Di=rand()(Pb-Pw) (1)

      Pnew= Pw+Di (2)

      其中,rand()是介于0和1間的隨機數(shù)。Di表示最差青蛙在第i維移動的距離,其更新移動的步長介于dmindmax之內(nèi)。Pnew為最差青蛙移動后的新位置。如果按式(1)-(2)不能改善青蛙位置,則使用Pg代替(1)中Pb。如果再不能改善,則隨機產(chǎn)生一個解。若新得到的位置仍不能改善,則進入到青蛙進化與學習層。

      2)青蛙進化與學習層

      青蛙各子群體進行局部搜索后,對最差青蛙位置進行了更新。如果在規(guī)定次數(shù)內(nèi),不能改善最差青蛙位置,則這種情況顯然不利于算法的收斂。對此,該層將進化交叉操作與最優(yōu)學習策略引入到MSFLA中。

      為加快算法收斂速度,僅在一次迭達完成后,判斷青蛙的新位置 Pnew是否優(yōu)于舊位置,如果沒有,則進行青蛙的進化與學習過程,其步驟如下:

      Step1:將青蛙的新位置 Pnew與對應(yīng)的舊位置Pw進行遺傳交叉操作,得到青蛙的新位置Pnew_1, Pnew_2.

      Step2:計算青蛙位置PnewPnew_1Pnew_2的適應(yīng)值,將適應(yīng)度最高的位置標記為Pnew_3.

      Step3:比較青蛙位置Pnew_3Pw, 若Pnew_3更優(yōu),則Pnew_3作為最差青蛙的新位置, 促進算法的收斂,并轉(zhuǎn)至step7。否則,轉(zhuǎn)至Step4進行粒子舊位置Pw對全局最優(yōu)PgPb的同時學習。

      Step4:根據(jù)PSO中粒子的學習策略,使用以下公式(3)得到青蛙新的位置Pnew_4,

      Pnew_4= r1×(Pb-Pw)+r2×(Pg-Pw) (3)

      其中,r1,r2是兩個隨機數(shù)。該學習策略借簽了PSO中粒子群體的自我學習策略,使得子群體中的最差青蛙同時向全局最優(yōu)PgPb進行并行學習,避免了青蛙局部搜索中的單一學習,有力的增強了青蛙跳出局部最優(yōu)解的能力。

      Step5:計算青蛙Pnew_3Pnew_4的適應(yīng)值,從中選出適應(yīng)度最高的青蛙位置,記為NP。

      Step6:比較NP和Pw,如果NP更優(yōu),則NP作為最差青蛙新位置以促進算法收斂;如果NP和Pw的適應(yīng)值相等或無法比較,則保存NP作為最差青蛙的位置以提高算法的收斂性;否則,仍以Pw作為青蛙的位置。

      Step7:青蛙進化及最佳學習結(jié)束。

      3)外部檔案信息交換策略

      在多目標優(yōu)化算法中,全局最優(yōu)Pg的選擇會對算法的性能產(chǎn)生直接的影響。在本發(fā)明中,Pg將根據(jù)一定策略從外部檔案中擇優(yōu)選擇非支解,在描述該策略之前,仍以定義1中的待優(yōu)化最小函數(shù)F(x)為例,并給出如下相關(guān)定義:

      定義1 個體優(yōu)越數(shù):對于兩個體a=(a1,a2,...,am)和b=(b1,b2,...,bm), 若F(a)分別在k個目標﹑h個目標﹑t個目標上小于,等于及大于F(b), 則記個體a的優(yōu)越數(shù)η(a,b)=k, 等價數(shù)?(a,b)=h, 劣指數(shù)Θ(a,b)=t,且有k+h+t=m。

      設(shè)定外部檔案能容納的支配解數(shù)目為L,外部檔案信息交換策略描述如下:

      Step1:若外部檔案未滿,則青蛙進化及最佳學習過程結(jié)束產(chǎn)生的非支配解可直接進入外部檔案。

      Step2:若外部檔案已滿,則青蛙進化及最佳學習過程結(jié)束后的非支配解x按下述規(guī)則擇優(yōu)進入。

      Step2.1: 若xPareto優(yōu)于外部檔案中的某一非支配個體y,則x取代y直接進入外部檔案,并轉(zhuǎn)3。

      Step2.2: 若η(x,y)>Θ(x,y),則x取代y直接進入外部檔案.否則,若r≥0.9則x取代y進入外部檔案,其中,r為介于0和1之間的隨機數(shù)。

      Step3:對外部檔案中兩兩個體之間的優(yōu)越數(shù)進行統(tǒng)計,優(yōu)越數(shù)最大的個體為全局最優(yōu)個體Pg,該個體將參與下一次算法進化過程。

      結(jié)合上述優(yōu)化過程描述,本發(fā)明提供的MSFLA方法流程描述如下:

      Step1: 初始化青蛙各子群體Popi(i=1,2,...,m)。

      Step2: 使用標準混合蛙跳優(yōu)化層進行局部搜索,更新最差青蛙位置。

      Step3: 若最差青蛙位置沒有得到更新,則進行青蛙進化與學習層,以改善青蛙最差位置,促使整個種群朝著全局最優(yōu)Pareto前沿前進。

      Step4: 將學習層得到的非支配解按外部檔案信息交換策略送入檔案中,并同時確保檔案的容量沒有超出。

      Step5:判斷設(shè)定的迭達次數(shù)是否結(jié)束,若沒有,將各子群重新合成新一代種群并排序和劃分子族群,返回Step2。

      下面結(jié)合相關(guān)定義對本發(fā)明應(yīng)有原理進一步說明。

      本發(fā)明的目的針對傳統(tǒng)數(shù)學優(yōu)化方法應(yīng)用于復(fù)雜系統(tǒng)多目標優(yōu)化問題(multi-objective optimization problems, MOP)時,由于不同設(shè)計條件對各目標有著不同權(quán)重要求,且各目標之間的量綱和數(shù)量級不同,需要優(yōu)化的多個目標之間常常存在著沖突性,因此基于傳統(tǒng)數(shù)學理念設(shè)計的多目標優(yōu)化方法應(yīng)用于實際問題中難以對MOP進行有效的處理。由于基于種群的混合蛙跳算法可以并行地搜索解空間中的多個解,本發(fā)明描述了一種基于多層次信息反饋的多目標混合蛙跳算法(Multi-objective Shuffled Frog Leaping Algorithm based on the interation of multi-level information, MSFL),整個優(yōu)化過程分為標準混合蛙跳優(yōu)化層﹑青蛙進化與學習層﹑外部檔案信息交換層。標準混合蛙跳優(yōu)化層保證青蛙進行正常的局部搜索優(yōu)化;青蛙進化與學習層保證青蛙每次迭達結(jié)束時都能得到更好的自身位置;外部檔案信息交換層可以保證青蛙種群獲得全局最優(yōu)解。MSFL各個層次之間通過信息反饋和交換,共同促進搜索朝著Pareto最優(yōu)解方向加快進行,共同提高算法的收斂性和多樣性。

      在此,給出如下多目標優(yōu)化問題的相關(guān)定義:

      定義2 多目標優(yōu)化問題: 在n維空間Ω中尋找向量x=(x1,x2,...,xn),使得目標函數(shù)F(x)中的多個目標f(x)(i=1,2,...,m)最小,即

      (3)

      定義3 Pareto支配: 向量a=(a1,a2,...,am)支配向量b=(b1,b2,...,bm),記作,當且僅當a不大于b,且a中存在小于b的分量,即

      (4)

      定義4 Pareto最優(yōu)解 向量為Pareto最優(yōu)解當且僅當空間,使得a=(f1(x’),f2(x’),...,fm(x’))支配向量b=(f1(x),f2(x),...,fm(x)).

      定義5 Pareto最優(yōu)解集 假定待優(yōu)化的多目標函數(shù)為F(x), 則其Pareto最優(yōu)解集定義為

      (3)

      定義6 Pareto前沿 假定待優(yōu)化的多目標優(yōu)化函數(shù)為F(x),Pareto最優(yōu)解為P, 則其Pareto前沿PF定義為

      (4)

      下面結(jié)合具體實施例對本發(fā)明的應(yīng)用原理進一步說明。

      本發(fā)明描述了一種基于多層次信息反饋的多目標混合蛙跳算法(Multi-objective Shuffled Frog Leaping Algorithm based on the interation of multi-level information, MSFL),吸收了遺傳算法的交叉算子及PSO的粒子進化方式,將整個優(yōu)化過程劃分為標準混合蛙跳優(yōu)化層,青蛙進化與學習層,外部檔案信息交換層。標準混合蛙跳優(yōu)化層保證青蛙進行正常的局部搜索優(yōu)化;青蛙進化與學習層保證青蛙每次迭達結(jié)束時都能得到更好的自身位置;外部檔案信息交換層可以保證青蛙種群獲得全局最優(yōu)解。MSFL各個層次之間通過信息反饋和交換,共同促進搜索朝著最優(yōu)解方向進行,增強了算法的多樣性并加快了算法的收斂性。本發(fā)明可以應(yīng)用于許多工業(yè)場合,如車間作業(yè)調(diào)度﹑應(yīng)急資源調(diào)度﹑云計算資源調(diào)度等問題。這些資源調(diào)度問題都可以描述為具有NP難度的線性0-1整數(shù)資源調(diào)度計算問題。描述如下:

      m個作業(yè)Ji(i=1,2,..m)需要分配到分配到n臺處理機上運行,作業(yè)Ji需要的處理時間為ti,若作業(yè)Ji分配到處理機j上完成,則令xij=1,否則xij=0。表示處理機j完工時間,表示作業(yè)i只能分配一個處理機上運行。

      本發(fā)明求解上述資源調(diào)度問題的程序統(tǒng)一流程描述如下:

      假設(shè)有3臺處理機Pi(i=1,2,3)和9個作業(yè)Jk(k=1,2,...9),作業(yè)需要的運行時間分別為81,40,26,4,65,98,53,71,15。若由貪心算法所得的調(diào)度結(jié)果為:P1(J6,J2,J4), P2(J1,J7,J3), P3(J8,J5,J9),完成總時間為160。若使用本發(fā)明描述的MSFL算法,對上述問題作100次測試,得到的解如表1所示。

      表1 仿真結(jié)果

      表1顯示了本發(fā)明方法與其他求解資源調(diào)度問題常用的算法對比的結(jié)果,表中數(shù)據(jù)顯示出使用本發(fā)明方法(FGA)求解所設(shè)問題時,所求平均值與最優(yōu)值之間的平均誤差不超過7%, 最大沒并沒有超過14.7%,相比于其它的比較方法,

      本發(fā)明方法優(yōu)于單純的貪心算法和被比較算法。因此,本發(fā)明描述的算法是最佳的調(diào)度方案。

      本發(fā)明中提出的基于多層次信息反饋的多目標混合蛙跳算法簡稱為MSFLA,并與多目標加權(quán)法和標準混合蛙跳算法進行比較,用于比較的測試函數(shù)描述如下:

      表2中分別有兩個二維和兩個三維的的目標函數(shù),這些測試函數(shù)的特征不盡相同。其中,ZDT1和ZDT2具有連續(xù)的特點,且ZDT1和ZDT2分別具有凸型和凹型的Pareto前端特點。WFG1和WFG2分別具有連續(xù)的凸凹型和非連續(xù)的凹凸型Pareto前端特點。

      本發(fā)明中,MSFLA的參數(shù)設(shè)置為:最大迭達次數(shù)2×105,青蛙個體總數(shù)200,族群數(shù)為20,每個族群的青蛙個數(shù)為10,族群內(nèi)的迭達次數(shù)為1,最大蛙跳步長為最大搜索范圍的0.5倍。

      為了驗證改進算法的尋優(yōu)效果和穩(wěn)定性,相比于單目標優(yōu)化問題,多目標優(yōu)化不但要求收斂到真正的Pareto前端,而且保證Pareto的解集均勻分布。在此,本發(fā)明引入兩個性能指標和來測試不同算法的優(yōu)劣性(Deb K, Pratap A, Agarwal S, et al. A fast and elitist multiobjective genetic algorithm:NSGA-II. IEEE Transations on Evoltuionary Computation, 2002,6(2):182-197)。

      1)測度

      該測度能夠度量所得到的Pareto最優(yōu)解集與真正Pareto前端的距離。值越小所得到的Pareto最優(yōu)解越接近于真正的Pareto前端。反之,越偏離真正的Pareto前端。

      為了防止隨機性測試帶來的實驗誤差,本發(fā)明對MSFLA﹑目標加權(quán)法﹑標準混合蛙跳算法分別獨立運行50次,求其平均結(jié)果。表3給出了三種比較算法獨立運行后所得的平均值和方差。表3中數(shù)據(jù)顯示出,本發(fā)明提出的MSFLA得到的Pareto最優(yōu)解集更靠近真正的Pareto前端,且其對應(yīng)方差相比于其它兩種被比較算法也較小。

      表3 測度的平均值和方差

      2)測度

      用于度量所得到的Pareto最優(yōu)解集在前端分布上的均性。值越小說明說明分布得越均勻,反之,表明均勻性越差。

      表4給出了三種被比較算法迭代50次所得的測度平均值和方差值。表中數(shù)據(jù)顯示出,本發(fā)明描述的MSFLA獲得的Pareto最優(yōu)解集比其它兩種算法獲得的Pareto解集在Pareto前端分布置得更均勻,并且方差值也優(yōu)于其它的兩種比較算法。

      表4 測度的平均值和方差

      通過上述實施效果分析可以發(fā)現(xiàn),與多目標加權(quán)法和標準混合蛙跳算法相比,在求解多目標優(yōu)化問題過程中,尤其是高維多目標優(yōu)化問題過程時,本發(fā)明所描述的MSFLA具有較好的收斂性和分布均勻性,其產(chǎn)生的Pareto解集更加接近Pareto前端。

      此外,現(xiàn)實工程及科學研究中,也存在著許多單目標優(yōu)化問題的工程案例情況,對這些單目標優(yōu)化問題在較合理的時間內(nèi)進行快速求解,不僅能提高生產(chǎn)效率,同時也能推動產(chǎn)業(yè)增值的提升。為此,本發(fā)明描述的MSFLA也被應(yīng)用于典型的單目標優(yōu)化問題測試。測試函數(shù)如下描述:

      1)

      該函數(shù)是一個典型的多峰型函數(shù),當算法最終優(yōu)化結(jié)果大于-0.005時算法開始收斂。

      2)

      該函數(shù)具有多個局部極大值點,但全局極大值點為1,當其算法優(yōu)化結(jié)果大于0.995時算法開始收斂。

      本發(fā)明仍然使用上述三種比較算法,各算法分別獨立運行50次,最大迭達次數(shù)2×105,青蛙個體總數(shù)200,族群數(shù)為20,每個族群的青蛙個數(shù)為10,族群內(nèi)的迭達次數(shù)為1,最大蛙跳步長為最大搜索范圍的0.5倍。對f1, f2兩個測試函數(shù)求得優(yōu)化結(jié)果如表5所示。

      表5 不同算法求解函數(shù)極值問題的對比結(jié)果

      表5中結(jié)果顯示出,三種比較算法在f1測試結(jié)果的比較,本發(fā)明所描述的MSFLA獲得較優(yōu)的結(jié)果,無論是最優(yōu)結(jié)果,還是平均值及運行時間上都有明顯的優(yōu)勢。而在f2測試函數(shù)的結(jié)果顯示表明,雖然三種被比較算法均能獲得相同的最優(yōu)結(jié)果,但MSFLA在所獲得平均值及運行時間等性能方面均占有明顯的優(yōu)勢。

      綜上,本發(fā)明描述的基于多層次信息反饋的多目標混合蛙跳算法(MSFLA),吸收了遺傳算法的交叉特性和粒子群優(yōu)化中的自我學習更新技術(shù)策略,增強了所提出算法的尋優(yōu)能力,提升了算法的尋優(yōu)效率。由上述多處理器調(diào)度實施及若干復(fù)雜工程系統(tǒng)優(yōu)化問題的求解效果表明:區(qū)別于傳統(tǒng)優(yōu)化技術(shù),如Newton法﹑Lagrange法﹑共軛梯度法等,本項發(fā)明技術(shù)在面向具有多變量﹑多約束﹑多目標等各類先進生產(chǎn)系統(tǒng)待優(yōu)化問題時,并不要求待求解問題本身須在嚴格特定限制條件下(如目標函數(shù)可微﹑線性﹑變量連續(xù)性等特點),才能應(yīng)用相關(guān)技術(shù)進行全局求解。結(jié)合實際工程應(yīng)用領(lǐng)域,下面以可靠性穩(wěn)健優(yōu)化設(shè)計為例,將本發(fā)明描述的MSFLA應(yīng)用于車輛零部件產(chǎn)品設(shè)計中,以驗證本發(fā)明應(yīng)用于汽車工業(yè)設(shè)計中的技術(shù)效果。

      汽車制造中,許多零部件的設(shè)計需要即同時確保節(jié)省材料,又需滿足一定的零部件安全可靠度指標。如,在車輛前軸中部,由于采用了工字梁結(jié)構(gòu),在兩車輪和兩個彈簧之間傳遞力和力矩,導(dǎo)致車兩前軸是受彎扭聯(lián)合作用的車輛零部件。為使零部件具有最佳的可靠性,同時又要確保用較少的材料設(shè)計車輛前軸載面。首先,我們可將車輛前軸的可靠性穩(wěn)鍵優(yōu)化設(shè)計問題轉(zhuǎn)化為待求解的多目標優(yōu)化問題,然后,運用本發(fā)明方法求解得到對應(yīng)最佳車輛前軸截面的幾何尺寸a,t,h,b的值。在此,首先給出某種國產(chǎn)某種車輛前軸的危險截面承受的彎矩和扭矩的均值和標準差為M=(3517220, 319715)N·mm, T=(3026710, 245160)N·mm, 材料強度的均值和標準差為r=(667, 25.3), 可靠度指標為β。

      2. 運用本發(fā)明求解該類可靠性優(yōu)化問題,步驟如下;

      (1)要使車輛前軸的面積最小,首先截面的面積函數(shù)為:

      f1(x)=x1(x3-2x2)+2x4x2

      其中,設(shè)計變量x1,x2,x3,x4分別對應(yīng)系數(shù)a,t,h,b,且各系數(shù)的范圍:10mm<x1<13mm;

      11mm<x2<15mm;82mm<x3<86mm;66mm<x4<63mm。

      (2)其次,對狀態(tài)函數(shù)f1(x)求偏導(dǎo),要求前軸的可靠度對各設(shè)計變量的靈敏度為最小。

      (3)最后,將上述f1,f2,f3,f4,f5組合成為多目標優(yōu)化問題Min F(x)=Min(f1(x),f2(x),f3(x),f4(x),f5(x)),運用MSFLA進行優(yōu)化求解。

      運用本發(fā)明求解上述F(X),仍然使用上述二種比較算法(目標加權(quán)法,SFLA),各算法分別獨立運行100次,最大迭達次數(shù)2×105,青蛙個體總數(shù)200,族群數(shù)為20,每個族群的青蛙個數(shù)為10,族群內(nèi)的迭達次數(shù)為1,最大蛙跳步長為最大搜索范圍的0.5倍。實驗結(jié)果如表6所示:

      表6 三種方法求解可靠性優(yōu)化問題的結(jié)果比較

      表6數(shù)據(jù)顯示,與其它兩種方法相比,本發(fā)明進行零部件的可靠性優(yōu)化設(shè)計過程中,對待優(yōu)化問題并沒有嚴格的數(shù)學條件限制,適用于求解目標函數(shù)具有多個局部極值點或在某一局部不連續(xù)或不可微等生產(chǎn)系統(tǒng)優(yōu)化問題。對前輛前軸各系數(shù)求解時,即確保了前軸工字梁截面的最小面積,同時還提高了零部件的可靠度指標,且本發(fā)明所獲得可靠性指標最高??梢?,本發(fā)明方法對工程及科學理論研究領(lǐng)域中多目標優(yōu)化問題具有良好的普適性及魯棒性,能夠快速﹑高效求解各類生產(chǎn)系統(tǒng)優(yōu)化問題,且在有效保證不失去多目標函數(shù)特性的情況下尋找到最優(yōu)解。類似于上述可靠性優(yōu)化問題設(shè)計,將發(fā)明應(yīng)用于實際工業(yè)生產(chǎn)的大規(guī)模節(jié)能運行﹑工業(yè)資源投入﹑物質(zhì)應(yīng)急分配等各類優(yōu)化問題也能帶來快速高效的系統(tǒng)配置效果。

      本發(fā)明提供的基于多層次信息反饋的多目標混合蛙跳,與傳統(tǒng)的求解復(fù)雜系統(tǒng)的多目標優(yōu)化方法相比,本發(fā)明方法具有直觀簡明、普適性等特點。首先本方法是在基本混合蛙跳算法基礎(chǔ)上,引入遺傳交叉操作至青蛙的進化與學習層,充分利用了迭達過程中所得到的青蛙位置的全部信息。其次,對全局最優(yōu)青蛙位置Pg信息的更新采用了PSO中的粒子優(yōu)化學習更新策略,避免了青蛙局部搜索中的單一子群體局部學習,有力地增強了青蛙跳出局部最優(yōu)解的能力。最后,本發(fā)明描述的外部檔案信息交換策略能極大增強了外部檔案中非支配解的多樣性和收斂性,對算法的性能產(chǎn)生了直接的影響。所提出發(fā)明方法通過對不同標準測試案例得到的結(jié)果分析,均驗證了本發(fā)明描述的MSFLA具有較強的魯棒性及普適性。

      以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。

      當前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1