一、最優(yōu)化問(wèn)題的分類
1. 根據(jù)約束類型分類:
(1)無(wú)約束問(wèn)題
(2)約束問(wèn)題
2.根據(jù)目標(biāo)函數(shù)及約束函數(shù)的類型分類:
最優(yōu)化問(wèn)題也稱為規(guī)劃問(wèn)題
如果最優(yōu)化問(wèn)題的目標(biāo)函數(shù)為f(x),約束條件為gi(x)>=0,i=1,2,..,m,則:
(1)線性規(guī)劃:
當(dāng)f(x)和gi(x)均為線性函數(shù)時(shí)
(2)非線性規(guī)劃:
當(dāng)f(x)和gi(x)不全為線性函數(shù)時(shí)
(3)二次規(guī)劃:
當(dāng)f(x)為二次函數(shù),而gi(x)全為線性函數(shù)時(shí)
3.根據(jù)變量的類型分類
(1)整數(shù)規(guī)劃:
對(duì)于最優(yōu)化問(wèn)題,如果變量x=(x1,x2,…,xn)T的各分量只能取整數(shù),則相應(yīng)的最優(yōu)化問(wèn)題稱為整數(shù)規(guī)劃。
(2)混合整數(shù)規(guī)劃:
如果變量x=(x1,x2,…,xn)T 的部分分量只能取整數(shù),則相應(yīng)的最優(yōu)化問(wèn)題稱為混合整數(shù)規(guī)劃。
(3)0-1規(guī)劃:
如果變量x=(x1,x2,…,xn)T 的各分量只能取0和1,則相應(yīng)的最優(yōu)化問(wèn)題稱為0-1規(guī)劃。
二、最優(yōu)化問(wèn)題的基本模型要素
最優(yōu)化模型一般包括變量、約束條件和目標(biāo)函數(shù)三要素:
1.變量:
指最優(yōu)化問(wèn)題中待確定的某些量。變量可用x=(x1,x2,…,xn)T表示。
2.約束條件:
指在求最優(yōu)解時(shí)對(duì)變量的某些限制,包括技術(shù)上的約束、資源上的約束和時(shí)間上的約束等。列出的約束條件越接近實(shí)際系統(tǒng),則所求得的系統(tǒng)最優(yōu)解也就越接近實(shí)際最優(yōu)解。約束條件可用 gi(x)≤0表示i=1,2,…,m,m 表示約束條件數(shù);或x∈R(R表示可行集合)。
3.目標(biāo)函數(shù):
最優(yōu)化有一定的評(píng)價(jià)標(biāo)準(zhǔn)。目標(biāo)函數(shù)就是這種標(biāo)準(zhǔn)的數(shù)學(xué)描述,一般可用f(x)來(lái)表示,即f(x)=f(x1,x2,…,xn)。要求目標(biāo)函數(shù)為最大時(shí)可寫成;要求最小時(shí)則可寫成。目標(biāo)函數(shù)可以是系統(tǒng)功能的函數(shù)或費(fèi)用的函數(shù)。它必須在滿足規(guī)定的約束條件下達(dá)到最大或最小。 問(wèn)題的分類 最優(yōu)化問(wèn)題根據(jù)其中的變量、約束、目標(biāo)、問(wèn)題性質(zhì)、時(shí)間因素和函數(shù)關(guān)系等不同情況,可分成多種類型(見(jiàn)表)。最優(yōu)化方法
三、常見(jiàn)的最優(yōu)化方法
1. 梯度下降法(Gradient Descent)
梯度下降法是最早最簡(jiǎn)單,也是最為常用的最優(yōu)化方法。梯度下降法實(shí)現(xiàn)簡(jiǎn)單,當(dāng)目標(biāo)函數(shù)是凸函數(shù)時(shí),梯度下降法的解是全局解。一般情況下,其解不保證是全局最優(yōu)解,梯度下降法的速度也未必是最快的。梯度下降法的優(yōu)化思想是用當(dāng)前位置負(fù)梯度方向作為搜索方向,因?yàn)樵摲较驗(yàn)楫?dāng)前位置的最快下降方向,所以也被稱為是”最速下降法“。最速下降法越接近目標(biāo)值,步長(zhǎng)越小,前進(jìn)越慢。
2. 牛頓法(Newton's Method)和擬牛頓法(Quasi-Newton Methods)
- 牛頓法
牛頓法是一種在實(shí)數(shù)域和復(fù)數(shù)域上近似求解方程的方法。方法使用函數(shù)f(x)的泰勒級(jí)數(shù)的前面幾項(xiàng)來(lái)尋找方程f(x) = 0的根。牛頓法最大的特點(diǎn)就在于它的收斂速度很快。 - 擬牛頓法
擬牛頓法是求解非線性優(yōu)化問(wèn)題最有效的方法之一,其本質(zhì)思想是改善牛頓法每次需要求解復(fù)雜的Hessian矩陣的逆矩陣的缺陷,它使用正定矩陣來(lái)近似Hessian矩陣的逆,從而簡(jiǎn)化了運(yùn)算的復(fù)雜度。擬牛頓法和最速下降法一樣只要求每一步迭代時(shí)知道目標(biāo)函數(shù)的梯度。通過(guò)測(cè)量梯度的變化,構(gòu)造一個(gè)目標(biāo)函數(shù)的模型使之足以產(chǎn)生超線性收斂性。這類方法大大優(yōu)于最速下降法,尤其對(duì)于困難的問(wèn)題。另外,因?yàn)閿M牛頓法不需要二階導(dǎo)數(shù)的信息,所以有時(shí)比牛頓法更為有效。如今,優(yōu)化軟件中包含了大量的擬牛頓算法用來(lái)解決無(wú)約束,約束,和大規(guī)模的優(yōu)化問(wèn)題。
3. 共軛梯度法(Conjugate Gradient)
共軛梯度法是介于最速下降法與牛頓法之間的一個(gè)方法,它僅需利用一階導(dǎo)數(shù)信息,但克服了最速下降法收斂慢的缺點(diǎn),又避免了牛頓法需要存儲(chǔ)和計(jì)算Hesse矩陣并求逆的缺點(diǎn),共軛梯度法不僅是解決大型線性方程組最有用的方法之一,也是解大型非線性最優(yōu)化最有效的算法之一。在各種優(yōu)化算法中,共軛梯度法是非常重要的一種。其優(yōu)點(diǎn)是所需存儲(chǔ)量小,具有步收斂性,穩(wěn)定性高,而且不需要任何外來(lái)參數(shù)。
4. 啟發(fā)式優(yōu)化方法
啟發(fā)式方法指人在解決問(wèn)題時(shí)所采取的一種根據(jù)經(jīng)驗(yàn)規(guī)則進(jìn)行發(fā)現(xiàn)的方法。其特點(diǎn)是在解決問(wèn)題時(shí),利用過(guò)去的經(jīng)驗(yàn),選擇已經(jīng)行之有效的方法,而不是系統(tǒng)地、以確定的步驟去尋求答案。啟發(fā)式優(yōu)化方法種類繁多,包括經(jīng)典的模擬退火方法、遺傳算法、蟻群算法以及粒子群算法等等。
5. 拉格朗日乘數(shù)法的基本思想
作為一種優(yōu)化算法,拉格朗日乘子法主要用于解決約束優(yōu)化問(wèn)題,它的基本思想就是通過(guò)引入拉格朗日乘子來(lái)將含有n個(gè)變量和k個(gè)約束條件的約束優(yōu)化問(wèn)題轉(zhuǎn)化為含有(n+k)個(gè)變量的無(wú)約束優(yōu)化問(wèn)題。拉格朗日乘子背后的數(shù)學(xué)意義是其為約束方程梯度線性組合中每個(gè)向量的系數(shù)。
將一個(gè)含有n個(gè)變量和k個(gè)約束條件的約束優(yōu)化問(wèn)題轉(zhuǎn)化為含有(n+k)個(gè)變量的無(wú)約束優(yōu)化問(wèn)題,拉格朗日乘數(shù)法從數(shù)學(xué)意義入手,通過(guò)引入拉格朗日乘子建立極值條件,對(duì)n個(gè)變量分別求偏導(dǎo)對(duì)應(yīng)了n個(gè)方程,然后加上k個(gè)約束條件(對(duì)應(yīng)k個(gè)拉格朗日乘子)一起構(gòu)成包含了(n+k)變量的(n+k)個(gè)方程的方程組問(wèn)題,這樣就能根據(jù)求方程組的方法對(duì)其進(jìn)行求解。