第四講:無約束優(yōu)化_第1頁
第四講:無約束優(yōu)化_第2頁
第四講:無約束優(yōu)化_第3頁
第四講:無約束優(yōu)化_第4頁
第四講:無約束優(yōu)化_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、無約束優(yōu)化無約束優(yōu)化標(biāo)準(zhǔn)形式:標(biāo)準(zhǔn)形式: 數(shù)學(xué)預(yù)備知識1 梯度nR定義1 設(shè)f(X)是定義在n維歐氏空間的上的可微函數(shù),我們稱12()()()(,)TnfXfXfXxxx為函數(shù) f(X)在點(diǎn)X處的梯度,記為 f(X).1,梯度方向是函數(shù)在點(diǎn)X處增長最快的方向, 負(fù)梯度方向是函數(shù)在點(diǎn)X處下降最快的方向.2,梯度的模是函數(shù)沿這一方向的變化率.3,滿足梯度()0f X的點(diǎn)稱為駐點(diǎn),在區(qū)域內(nèi)部極值點(diǎn)必為駐點(diǎn),而駐點(diǎn)不一定是極值點(diǎn).2 黑塞(Hesse)矩陣定義2 設(shè)f(X)是定義在nR上的二階可微函數(shù),則以其二階偏導(dǎo)數(shù)為元素構(gòu)成的下述nn 矩陣稱為函數(shù)f(X)在點(diǎn)X的黑塞矩陣,記為H(X)或2()f

2、X. 當(dāng)f(X) 二階偏導(dǎo)數(shù)連續(xù)時H(X)是對稱矩陣.2222112122222212222212()()nnnnnnfffxxxxxfffH Xf Xxxxxxfffxxxxxx 當(dāng)f(X)是二次函數(shù): 1()2TTf XX AXB XC時,2()f XA即二次函數(shù)的黑塞矩陣與點(diǎn)X無關(guān).例1,設(shè)43222123122313()234f Xxxxx xx xx x求()f X2()f X和解32112322213321342()64642xx xxf Xxxxxxx x212132123112222()21242462xxxxf Xxxxx3 多元函數(shù)的泰勒展開式定理1 (多元函數(shù)的泰勒展開式

3、)設(shè)f(X)是定義在nDR上的函數(shù),且XD為一給定點(diǎn),XD為任一點(diǎn),那么1. 若f(X)連續(xù)可微,則存在(0,1),使()()( ) ()Tf Xf XfXX其中();XXX2. 若f(X)二次連續(xù)可微,則存在(0,1)使21( )()() ()()( ) ()2TTTf Xf Xf XXXXXfXX其中();XXX3. 若f(X)二次連續(xù)可微,則22( )()() ()1()() ()()2TTTf Xf Xf XXXXXf XXXXX5.1.4 正定矩陣、負(fù)定矩陣、半定矩陣、不定矩陣名 稱定 義充 要 條 件正定矩陣特征值都大于零的實(shí)對稱矩陣半正定矩陣特征值都不小于零的實(shí)對稱矩陣負(fù)定矩陣特

4、征值都小于零的實(shí)對稱矩陣半負(fù)定矩陣特征值都不大于零的實(shí)對稱矩陣不定矩陣特征值既有大于零的又有小于零的實(shí)對稱矩陣有兩個奇數(shù)階主子式,其中一個為正,另一個為負(fù)0,1,2,iAindet0,0,1,2,1iAAin0,1,2,0,iiAini為奇數(shù)為偶數(shù)0,det0,1 ,2, ,10,iiAAini為 奇 數(shù)為 偶 數(shù)5.2 無約束最優(yōu)化問題的解5.2.1 無條件最優(yōu)化問題的最優(yōu)性條件1. 用黑塞矩陣判斷駐點(diǎn)的性質(zhì)已知函數(shù)f(X)的駐點(diǎn)X,可以利用駐點(diǎn)處的黑塞矩陣來判斷駐點(diǎn)的性質(zhì):(1)若2()f X是正定的,則駐點(diǎn)X 是極小點(diǎn);(2)若2()f X是負(fù)定的,則駐點(diǎn)X 是極大點(diǎn);(3)若2()f

5、X是不定的,則駐點(diǎn)X 不是極值點(diǎn);(4)若2()f X是半定的,則駐點(diǎn)X 可能是極值點(diǎn); 也可能不是極值點(diǎn),視高階導(dǎo)數(shù)情況而定.2 極值點(diǎn)的必要條件和充分條件定義1 對于問題(1),設(shè)nXR是任一給定點(diǎn),P是是非零向量,若存在一個數(shù)0,使得對于任意(0, )都有()()f XPf X,則稱P是f(X)在X處的下降方向.定理1 設(shè)1:nnfRRXR在可微,如果存在向量nPR使得()0,().f X PPf XX則 為在 處的下降方向定理2 (一階必要條件)設(shè)f 在點(diǎn)nXR可微,如果X是(1)的局部最優(yōu)解,則必有()0f X稱為駐點(diǎn).定理3 (二階必要條件)設(shè)f 在點(diǎn)nXR二次可微,X如果是(1)

6、的局部最優(yōu)解,則必有()0f X且黑塞矩陣是半正定的.定理4 (二階充分條件)設(shè)f 在點(diǎn)nXR二次可微,如果()0f X且H(X )正定,則 是問題(1)的X嚴(yán)格局部最優(yōu)解定理5(充要條件)設(shè)f 是定義在n維歐氏空間nR上的凸函數(shù),nXR,則 為全局極值點(diǎn)的充要條件是X()0f X.若f是嚴(yán)格凸函數(shù),則全局極值點(diǎn)是唯一的.搜索算法概述搜索法的基本思想:首先給定目標(biāo)函數(shù)的極小點(diǎn)的初始估計0X然后按照一定的規(guī)則產(chǎn)生一個點(diǎn)列kX這種規(guī)則通常就叫做算法希望點(diǎn)列的極限就是函數(shù)的極小值點(diǎn) ; 最速下降法是一種最基本的算法,它在最優(yōu)化方法中占有重要地位.最速下降法的優(yōu)點(diǎn)是工作量小,存儲變量較少,初始點(diǎn)要求不

7、高;缺點(diǎn)是收斂慢,最速下降法適用于尋優(yōu)過程的前期迭代或作為間插步驟,當(dāng)接近極值點(diǎn)時,宜選用別種收斂快的算法. 5.2.35.2.3最速下降法(共軛梯度法)算法步驟:最速下降法(共軛梯度法)算法步驟:5.2.45.2.4牛頓法算法步驟:牛頓法算法步驟: 如果f是對稱正定矩陣A的二次函數(shù),則用牛頓法,經(jīng)過一次迭代就可達(dá)到最優(yōu)點(diǎn),如不是二次函數(shù),則牛頓法不能一步達(dá)到極值點(diǎn),但由于這種函數(shù)在極值點(diǎn)附近和二次函數(shù)很近似,因此牛頓法的收斂速度還是很快的. 牛頓法的收斂速度雖然較快,但要求黑塞矩陣可逆,要計算二階導(dǎo)數(shù)和逆矩陣,就加大了計算機(jī)的計算量和存儲量.3 3擬牛頓法擬牛頓法返回MATLAB優(yōu)化工具箱簡

8、介優(yōu)化工具箱簡介1.1.MATLAB求解優(yōu)化問題的主要函數(shù)求解優(yōu)化問題的主要函數(shù)2.2.優(yōu)化函數(shù)的輸入變量優(yōu)化函數(shù)的輸入變量 使用優(yōu)化函數(shù)或優(yōu)化工具箱中其他優(yōu)化函數(shù)時, 輸入變量見下表:3.3.優(yōu)化函數(shù)的輸出變量見下表優(yōu)化函數(shù)的輸出變量見下表: :4 4控制參數(shù)選項(xiàng)的設(shè)置控制參數(shù)選項(xiàng)的設(shè)置 (3) MaxIterMaxIter: 允許進(jìn)行迭代的最大次數(shù),取值為正整數(shù).選項(xiàng)中常用的幾個參數(shù)的名稱、含義、取值如下選項(xiàng)中常用的幾個參數(shù)的名稱、含義、取值如下: : (1)陳列: 顯示水平.取值為off時,不顯示輸出; 取值為iter時,顯示每次迭代的信息;取值為final時,顯示最終結(jié)果.默認(rèn)值為fi

9、nal.(2)MaxFunEvals: 允許進(jìn)行函數(shù)評價的最大次數(shù),取值為正整數(shù).例:opts=optimset(Display, iter, TolFun,1e-8) 該語句創(chuàng)建一個稱為選擇的優(yōu)化選項(xiàng)結(jié)構(gòu),其中顯示參數(shù)設(shè)為iter, TolFun參數(shù)設(shè)為1e-8. 控制參數(shù)選項(xiàng)可以通過函數(shù)控制參數(shù)選項(xiàng)可以通過函數(shù)optimsetoptimset創(chuàng)建或修改創(chuàng)建或修改. .命令的命令的格式如下:格式如下:(1) options=optimset(optimfun) 創(chuàng)建一個含有所有參數(shù)名,并與優(yōu)化函數(shù)optimfun相關(guān)的默認(rèn)值的選項(xiàng)結(jié)構(gòu).(2)options=optimset(param1,v

10、alue1,param2,value2,.) 創(chuàng)建一個名稱為選項(xiàng)的優(yōu)化選項(xiàng)參數(shù),其中指定的參數(shù)具有指定值,所有未指定的參數(shù)取默認(rèn)值.(3) options=optimset(oldops, param1,value1,param2,value2,.) 創(chuàng)建名稱為oldops的參數(shù)的拷貝,用指定的參數(shù)值修改oldops中相應(yīng)的參數(shù).返回用用MATLAB解無約束優(yōu)化問題解無約束優(yōu)化問題 其中等式(3)、(4)、(5)的右邊可選用(1)或(2)的等式右邊. 函數(shù)fminbnd的算法基于黃金分割法和二次插值法,它要求目標(biāo)函數(shù)必須是連續(xù)函數(shù),并可能只給出局部最優(yōu)解. 常用格式如下:常用格式如下:(1)x

11、= fminbnd (fun,x1,x2)(2)x= fminbnd (fun,x1,x2 ,options)(3)x,fval= fminbnd()(4)x,fval,exitflag= fminbnd()(5)x,fval,exitflag,output= fminbnd()MATLAB(wliti1) 主程序?yàn)橹鞒绦驗(yàn)閣liti1.m: f=2*exp(-x).*sin(x); fplot(f,0,8); %作圖語句作圖語句 xmin,ymin=fminbnd (f, 0,8) f1=-2*exp(-x).*sin (x); xmax,ymax=fminbnd (f1, 0,8)例例2

12、2 有邊長為有邊長為3 3m的正方形鐵板,在四個角剪去相等的正方形以的正方形鐵板,在四個角剪去相等的正方形以制成方形無蓋水槽,問如何剪法使水槽的容積最大?制成方形無蓋水槽,問如何剪法使水槽的容積最大?設(shè)剪去的正方形的邊長為x,則水槽的容積為:xx2)23(建立無約束優(yōu)化模型為:miny=-xx)23(2,0 x1.5解解先編寫先編寫M文件文件fun0.m如下如下: : function f=fun0(x) f=-(3-2*x).2*x;主程序?yàn)橹鞒绦驗(yàn)閣liti2.m: x,fval=fminbnd(fun0,0,1.5); xmax=x fmax=-fval運(yùn)算結(jié)果為運(yùn)算結(jié)果為: xmax

13、= 0.5000, = 0.5000,fmax =2.0000. =2.0000.即剪掉的正方形即剪掉的正方形的邊長為的邊長為0.50.5m時水槽的容積最大時水槽的容積最大, ,最大容積為最大容積為2 2m3. .MATLAB(wliti2) 命令格式為命令格式為: :(1)x= fminunc(fun,X0 );或x=fminsearch(fun,X0 )(2)x= fminunc(fun,X0 ,options); 或x=fminsearch(fun,X0 ,options)(3)x,fval= fminunc(.); 或x,fval= fminsearch(.)(4)x,fval,exi

14、tflag= fminunc(.); 或x,fval,exitflag= fminsearch(5)x,fval,exitflag,output= fminunc(.); 或x,fval,exitflag,output= fminsearch(.) 2.多元函數(shù)無約束優(yōu)化問題多元函數(shù)無約束優(yōu)化問題標(biāo)準(zhǔn)型為:標(biāo)準(zhǔn)型為:min()F X3 fminunc為中型優(yōu)化算法的步長一維搜索提供了兩種算法,由選項(xiàng)中參數(shù)LineSearchType控制: LineSearchType=quadcubic (缺省值),混合的二次和三次多項(xiàng)式插值; LineSearchType=cubicpoly,三次多項(xiàng)式插使

15、用使用fminunc和和 fminsearch可能會得到局部最優(yōu)解可能會得到局部最優(yōu)解. .說明說明: :fminsearch是用單純形法尋優(yōu)是用單純形法尋優(yōu).fminunc算法見以下幾點(diǎn)說明:算法見以下幾點(diǎn)說明:1 fminunc為無約束優(yōu)化提供了大型優(yōu)化和中型優(yōu)化算法.由選項(xiàng)中的參數(shù)LargeScale控制:LargeScale=on (默認(rèn)值默認(rèn)值),使用大型算法使用大型算法LargeScale=off (默認(rèn)值默認(rèn)值),使用中型算法使用中型算法2 fminunc為中型優(yōu)化算法的搜索方向提供了4種算法,由 選項(xiàng)中的參數(shù)選項(xiàng)中的參數(shù)HessUpdate控制:控制: HessUpdate=b

16、fgs(默認(rèn)值),擬牛頓法的(默認(rèn)值),擬牛頓法的BFGS公式;公式;HessUpdate=dfp,擬牛頓法的,擬牛頓法的DFP公式;公式;HessUpdate=steepdesc,最速下降法,最速下降法例例3 3 minMATLAB(wliti3) 1. 1.編寫編寫M文件文件 fun1.m: :function f = fun1 (x)f = exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1); 2.2.輸入輸入M文件文件wliti3.m如下如下: : x0 = -1, 1; x=fminunc(fun1,x0); y=fun1(x) 3. 3.

17、運(yùn)行結(jié)果運(yùn)行結(jié)果: : x= 0.5000 -1.0000 y = 1.3029e-1012212122( )(42421) exf xxxx xxMATLAB (wliti31)MATLAB (wliti32)3.3.用用fminsearch函數(shù)求解函數(shù)求解MATLAB (wliti41)輸入命令: f=100*(x(2)-x(1)2)2+(1-x(1)2;x,fval,exitflag,output=fminsearch(f,-1.2 2)運(yùn)行結(jié)果: x =1.0000 1.0000fval =1.9151e-010exitflag = 1output= iterations: 108 f

18、uncCount: 202 algorthm: Nelder-Mead simplex direct search 4.4.用用fminunc 函數(shù)函數(shù)MATLAB (wliti44)(1)建立M文件fun2.m function f=fun2(x) f=100*(x(2)-x(1)2)2+(1-x(1)2(2)主程序wliti44.m Rosenbrock函數(shù)不同算法的計算結(jié)果函數(shù)不同算法的計算結(jié)果 可以看出,最速下降法的結(jié)果最差.因?yàn)樽钏傧陆捣ㄌ貏e不適合于從一狹長通道到達(dá)最優(yōu)解的情況.例例5 5 產(chǎn)銷量的最佳安排產(chǎn)銷量的最佳安排 某廠生產(chǎn)一種產(chǎn)品有甲、乙兩個牌號,討論在產(chǎn)銷平衡的情況下如何確定各自的產(chǎn)量,使總利潤最大.所謂產(chǎn)銷平衡指工廠的產(chǎn)量等于市場上的銷量.基本假設(shè)基本假設(shè)1 1價格與銷量成線性關(guān)系價格與銷量成線性關(guān)系2 2成本與產(chǎn)量成負(fù)指數(shù)關(guān)系成本與產(chǎn)量成負(fù)指數(shù)關(guān)系 模型建立模型建立 若根據(jù)大量的統(tǒng)計數(shù)據(jù),求出

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論