一種改進(jìn)和聲搜索算法求解非線性規(guī)劃及絕對(duì)值方程的方法
【專利摘要】本發(fā)明公開了一種改進(jìn)和聲搜索算法求解非線性規(guī)劃及絕對(duì)值方程的方法。求解非線性規(guī)劃包括:定義問題與和參數(shù)值;初始化和聲記憶庫;通過學(xué)習(xí)和聲記憶庫、嵌入正態(tài)分布的音調(diào)微調(diào)、隨機(jī)選擇音調(diào)生成新的和聲;對(duì)新解進(jìn)行評(píng)估;檢查是否達(dá)到算法終止條件;求解絕對(duì)值方程方法為:定義問題與參數(shù)值;初始化和聲記憶庫;通過學(xué)習(xí)和聲記憶庫、音調(diào)微調(diào)、隨機(jī)選擇音調(diào)生成新的和聲,設(shè)定一個(gè)概率WSR,通過比較隨機(jī)數(shù)Rand與WSR來選取待更新的和聲;之后對(duì)新解進(jìn)行評(píng)估;檢查是否達(dá)到算法終止條件。本發(fā)明應(yīng)用改進(jìn)后的算法求解了非線性規(guī)劃及絕對(duì)值方程,提高了數(shù)值穩(wěn)定性、運(yùn)算速度和精度。
【專利說明】一種改進(jìn)和聲搜索算法求解非線性規(guī)劃及絕對(duì)值方程的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于改進(jìn)和聲搜索算法【技術(shù)領(lǐng)域】,尤其涉及一種改進(jìn)和聲搜索算法求解非線性規(guī)劃及絕對(duì)值方程的方法。
【背景技術(shù)】
[0002]和聲搜索(Harmony search,HS)算法是2001年韓國學(xué)者Geem Z W等人提出的一種新穎的智能優(yōu)化算法。算法模擬了音樂創(chuàng)作中樂師們憑借自己的記憶,通過反復(fù)調(diào)整樂隊(duì)中各樂器的音調(diào),最終達(dá)到一個(gè)美妙的和聲狀態(tài)的過程。目前,該方法已在多維多極值函數(shù)優(yōu)化、管道優(yōu)化設(shè)計(jì)、土坡穩(wěn)定分析等問題中得到了廣泛應(yīng)用。
[0003]非線性規(guī)劃是運(yùn)籌的一個(gè)重要分支,它研究在一定的約束條件下目標(biāo)函數(shù)的極值問題。傳統(tǒng)的求解非線性規(guī)劃方法大都基于傳統(tǒng)的梯度類算法,并依賴于初始點(diǎn)的選取,而在一些實(shí)際問題中如何選取合適的初始點(diǎn)本身是一個(gè)比較困難的問題,總體來看,目前這些算法大都基于傳統(tǒng)的梯度類算法,求得的結(jié)果也只是局部最優(yōu),目前求解全局最優(yōu)解仍然是一個(gè)挑戰(zhàn)性難題。
[0004]隨著各種智能算法的出現(xiàn),用智能算法求解非線性規(guī)劃問題的研究也已開始。具體方法就是構(gòu)造非線性規(guī)劃問題的適應(yīng)度函數(shù),然后采用智能算法進(jìn)行求解。近年來,遺傳算法、粒子群算法、差分進(jìn)化算法、蟻群算法、文化算法、細(xì)菌覓食算法等已經(jīng)被廣泛應(yīng)用到非線性規(guī)劃問題的求解上,并取得了很大的進(jìn)展。
[0005]絕對(duì)值方程是指:
[0006]Ax-1 χ I =b
[0007]其中A e Rnxn, x,b e Rn, X表示對(duì)X的各個(gè)分量取絕對(duì)值,該問題稱之為絕對(duì)值方程(Absolute Value Equations),簡記為AVE。它是Jiri Rohn提出的絕對(duì)值矩陣方程的重要子類。絕對(duì)值方程的研究來源于兩個(gè)方面,一個(gè)是區(qū)間線性方程。區(qū)間線性方程是指方程的系數(shù)和常數(shù)項(xiàng)不是已知確定的,而是位于某一區(qū)間內(nèi),且方程個(gè)數(shù)與未知量個(gè)數(shù)相等。另一個(gè)來源是線性互補(bǔ)問題(線性互補(bǔ)問題是一類具有廣泛實(shí)際應(yīng)用背景的優(yōu)化問題,它為線性規(guī)劃、二次規(guī)劃提供了一個(gè)統(tǒng)一研究的框架)。目前對(duì)于絕對(duì)值方程的研究主要集中在理論與算法兩個(gè)方面,前者主要研究其解的存在性、唯一性;而后者主要建立其有效的求解方法和相應(yīng)的收斂性分析。Louis Caccetta在2010年發(fā)表的文章中給出了求解絕對(duì)值方程的一個(gè)光滑牛頓法,該算法用一個(gè)光滑函數(shù)替代原絕對(duì)值方程中的絕對(duì)值函數(shù),并證明了該光滑化方法具有二次收斂性。這是目前有關(guān)絕對(duì)值方程研究最好的理論結(jié)果。有關(guān)絕對(duì)值方程的應(yīng)用研究也已開始。
[0008]現(xiàn)有研究的是存在唯一解絕對(duì)值方程,給出算法并進(jìn)行相應(yīng)的收斂性分析。算法是在給定一個(gè)初始點(diǎn)的情況下進(jìn)行求解的,因此不可能求出所有的解;針對(duì)存在多個(gè)解的絕對(duì)值方程如何求出所有解,這是一個(gè)比較困難的問題。群體智能算法是一種隨機(jī)搜索算法,該算法在可行域內(nèi)隨機(jī)產(chǎn)生初始點(diǎn),通過一系列的操作(選擇、變異等)最后收斂到原問題的近似解,由于群體智能算法是多點(diǎn)開始的,因此就有可能找盡可能多的解。
【發(fā)明內(nèi)容】
[0009]本發(fā)明實(shí)施例的目的在于提供一種改進(jìn)和聲搜索算法求解非線性規(guī)劃及絕對(duì)值方程的方法,旨在解決傳統(tǒng)的求解非線性規(guī)劃方法如何選取合適的初始點(diǎn)比較困難、絕對(duì)值方程求解方法對(duì)存在多個(gè)解的絕對(duì)值方程不能求出所有解的問題。
[0010]本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種改進(jìn)和聲搜索算法求解非線性規(guī)劃的方法,該改進(jìn)和聲搜索算法求解非線性規(guī)劃的方法包括以下步驟:
[0011]第一步,定義問題與參數(shù)值:假設(shè)問題為最小化,形式如下minf (X), s.t.Xi e Xi,i = 1,2,..., N, f (X)是目標(biāo)函數(shù),X是由決策變量Xi構(gòu)成的解向量(i=l,2,…,吣,每一個(gè)變量的值域?yàn)閄i =Xi1 ≤Xi ≤ χΛ N為決策變量個(gè)數(shù),算法參數(shù)有:和聲記憶庫的大小、學(xué)習(xí)和聲記憶庫概率、音調(diào)微調(diào)概率、音調(diào)微調(diào)帶寬、創(chuàng)作的次數(shù);
[0012]第二步,初始化和聲記憶庫:
[0013]隨機(jī)生成HMS個(gè)和聲χ^χ2,…,Xhms放入和聲記憶庫,和聲記憶庫可以類比于遺傳算法中的種群,和聲記憶庫如下:
【權(quán)利要求】
1.一種改進(jìn)和聲搜索算法求解非線性規(guī)劃的方法,其特征在于,該改進(jìn)和聲搜索算法求解非線性規(guī)劃的方法包括以下步驟: 第一步,定義問題與參數(shù)值:假設(shè)問題為最小化,形式如下minf (X), s.t.Xi e Xi, i=l,2,..., N, f (χ)是目標(biāo)函數(shù),χ是由決策變量Xi構(gòu)成的解向量(i=l,2,…,吣,每一個(gè)變量的值域?yàn)閄i =Xi1 ^Xi ^ χΛ N為決策變量個(gè)數(shù),算法參數(shù)有:和聲記憶庫的大小、學(xué)習(xí)和聲記憶庫概率、音調(diào)微調(diào)概率、音調(diào)微調(diào)帶寬、創(chuàng)作的次數(shù); 第二步,初始化和聲記憶庫: 隨機(jī)生成HMS個(gè)和聲xSx2,…,Xhms放入和聲記憶庫,和聲記憶庫可以類比于遺傳算法中的種群,和聲記憶庫如下:
2.如權(quán)利要求1所述的改進(jìn)和聲搜索算法求解非線性規(guī)劃的方法,其特征在于,在第一步中,和聲記憶庫的大小、學(xué)習(xí)和聲記憶庫概率、音調(diào)微調(diào)概率、音調(diào)微調(diào)帶寬、創(chuàng)作的次數(shù)要被初始化。
3.一種改進(jìn)和聲搜索算法求解絕對(duì)值方程的方法,其特征在于,該改進(jìn)和聲搜索算法求解絕對(duì)值方程的方法包括以下步驟:第一步,定義問題與參數(shù)值:假設(shè)問題為最小化,形式如下minf (χ), s.t.Xi e Xi, i =.1,2,..., N,這里f(x)是目標(biāo)函數(shù),χ是由決策變量Xi構(gòu)成的解向量(i=l,2,…,吣,每一個(gè)變量的值域?yàn)閄i =Xi1 ^Xi ^ χΛ N為決策變量個(gè)數(shù),算法參數(shù)有:和聲記憶庫的大小、學(xué)習(xí)和聲記憶庫概率、音調(diào)微調(diào)概率、音調(diào)微調(diào)帶寬、創(chuàng)作的次數(shù),各參數(shù)在第一步均要被初始化; 第二步,初始化和聲記憶庫: 隨機(jī)生成HMS個(gè)和聲xSx2,…,Xhms放入和聲記憶庫,和聲記憶庫可以類比于遺傳算法中的種群; 第三步,生成一個(gè)新的和聲: 生成新的和聲x/ =(x' P χ' ?,..., χ' N),在生成新和聲時(shí),設(shè)定一個(gè)概率WSR,產(chǎn)生一個(gè)隨機(jī)數(shù)Rand,如果Rand〈WSR,則對(duì)當(dāng)前和聲庫HM中的最差解進(jìn)行更新;否則,對(duì)當(dāng)前和聲庫HM中的最好解進(jìn)行更新,同時(shí),在種群更新過程中概率在可行域內(nèi)選取,記改進(jìn)后的算法為HSWB,新和聲的每一個(gè)音調(diào)Xi' (i = 1,2,…,N)通過以下三種機(jī)理產(chǎn)生:學(xué)習(xí)和聲記憶庫,音調(diào)微調(diào),隨機(jī)選擇音調(diào); 新解的第一個(gè)變量Y i有HMCR的概率選自HM中(X;~X廣O的任何一個(gè)值,有1-HCMR的概率選自HM外(且在變量范圍內(nèi))的任何一個(gè)值,同樣的,其它變量的生成方式如下:
【文檔編號(hào)】G06F17/10GK103631758SQ201310624762
【公開日】2014年3月12日 申請日期:2013年11月21日 優(yōu)先權(quán)日:2013年11月21日
【發(fā)明者】雍龍泉 申請人:陜西理工學(xué)院