matlab優(yōu)化工具箱介紹_第1頁
matlab優(yōu)化工具箱介紹_第2頁
matlab優(yōu)化工具箱介紹_第3頁
matlab優(yōu)化工具箱介紹_第4頁
matlab優(yōu)化工具箱介紹_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Matlab優(yōu)化工具箱簡介1引言最優(yōu)化方法是專門研究如何從多個方案中選擇最佳方案的科學。最優(yōu)化是一門應用廣泛的學科,它討論決策問題的最佳選擇的特性,構(gòu)造尋求最佳解的計算 方法1。在生活和工作中,優(yōu)化問題廣泛存在。最優(yōu)化方法的研究和應用已經(jīng) 涉及很多領(lǐng)域,并取得了很好的經(jīng)濟效益和社會效益。MATLA是Mathworks公司推出的一套功能強大的過程計算及數(shù)值分析軟件, 是目前世界上應用最廣泛的工程計算軟件之一2。它包含很多工具箱,主要用來擴充matlab的數(shù)值計算、符號運算、圖形建模仿真等功能,使其能夠用于多 種學科。如,控制系統(tǒng)工具箱(Control System Toolbox )、信號處理工

2、具箱(Signal Processing Toolbox、財政金融工具箱(Financial Toolbox)等等.本文主要介 紹Matlab的優(yōu)化工具箱(Optimization Toolbox、的一些內(nèi)容。2優(yōu)化工具箱簡介(1) Matlab的優(yōu)化工具箱主要應用包括: 求解無約束條件非線性極小值; 求解約束條件下非線性極小值,包括目標逼近問題、極大-極小值問題; 求解二次規(guī)劃和線性規(guī)劃問題; 非線性最小二乘逼近和曲線擬合; 求解復雜結(jié)構(gòu)的大規(guī)模優(yōu)化問題。(2) 優(yōu)化工具箱的常用函數(shù):邊界約束條件下的非線性最小化fminbnd求解多變量函數(shù)的最小化Ufminunc求解無約束非線性最小化fmi

3、n search求解線性線性規(guī)劃問題lin prog求解二次規(guī)劃問題quadprog求解有約束的非線性最小化fmincon求解多目標規(guī)劃的優(yōu)化問題fgoalatta in求解最小、最大化問題fmin imax(3) Matlab優(yōu)化函數(shù)的查閱與定位在matlab的命令窗口鍵入命令help optiom結(jié)果顯示該工具箱中所有函數(shù)清單,部分函數(shù)如下圖示help optimOptimization ToolboxVersion 3 0.3 (R14SP3) 2S-Jul-2005Nonlinear miriijiiization of function孰.frinbYid- Scalar bound

4、ed nonlinear function miniihization.fmincon fuinsearch.- Multidimensional constrained nonlinear minimization,-Multidimensional unconstrained nonlinear miniininations by NelderMeadi direct search methodfininurLC一 Mult idlnensional unc onst r aine d nonlin已 zi: mjuiini z at i Ort.fseminf- Multidimensi

5、onal constrained ninijnizatiorij s-emi-infinits constraints.Nonlinear miriiiiiisation of iiultiobjective functions.f goal at tainfTninimaK- Multidimensional goal attairuncnt optimization- Multidimensional minima optimizationLinear least squares (of matrix problems)*lsqlinlsmonneE一 Linear least squar

6、es with lxnear constrzzLn土客.-Linear least squares with normegativity censtraints*優(yōu)化工具箱部分函數(shù)清單(4) 優(yōu)化工具箱的結(jié)構(gòu) 優(yōu)化工具箱的結(jié)構(gòu)如下圖所示;建徴憂it小fiuLmmcCmiv (kMxi非光?t CT=J)憂優(yōu)faninmrcJk全局 憂化星小二粛 bqcwinlifi bqcurvcfhVttttfmoMn ntinm 柜r*祥* fwwnfZ二撫軸劃 quadrv#liUKVKliqnMS liqlm上節(jié) ftnulmd boincuB liqcwH.liB ht|Cwvefktt I iSi

7、t (Mtpnojj 一般T tESG3優(yōu)化函數(shù)簡介3.1 線性規(guī)劃問題線性規(guī)劃問題是目標函數(shù)和約束條件均為線性函數(shù)的問題 線性規(guī)劃問題的數(shù)學模型為:min f x x PRs.t. : A * x _ bAeq * x = beqlb Eub其中f、x、b、beq、lb、ub為向量,A、Aeq為矩陣。其它形式的線性規(guī)劃問題都可經(jīng)過適當變換化為此標準形式。函數(shù) lin prog調(diào)用格式如下:x = linprog(f,A,b) % 求 min f *x sub.toA a b線性規(guī)劃的最優(yōu)解。x = linprog(f,A,b,Aeq,beq) %等式約束Aeq x =beq,若沒有不等式約束

8、A x 汕,則 A= ,b=。x = linprog(f,A,b,Aeq,beq,lb,ub) %指定 x 的范圍 lb _x_ub,若沒有等式約束 Aeq x 二 beq,貝U Aeq= ,beq=x = linprog(f,A,b,Aeq,beq,lb,ub,xO) %設置初值 x0x = lin prog(f,A,b,Aeq,beq,lb,ub,xO,opti ons) % opti ons為指定的優(yōu)化參數(shù)x,fval = lin prog( )% 返回目標函數(shù)最優(yōu)值,即fval= f *x 。x,lambda,exitflag = linprog()% lambda 為解 x 的 La

9、grange 乘子。x, lambda,fval,exitflag = lin prog()% exitflag為終止迭代的錯誤條件。x,fval, lambda,exitflag,output = lin prog()% output 為關(guān)于優(yōu)化的一些信息3.2 非線性規(guī)劃問題3.2.1無約束非線性規(guī)劃問題多元函數(shù)最小值的數(shù)學模型為:min f(x)x其中:X為向量,如x =Xi,X2,,Xn可以使用函數(shù) fminbnd、fminsearch 和 fminunc。 函數(shù) fminbnd格式x = fminbn d(fu n,x1,x2) % 返回自變量x在區(qū)間xi:x:x2上函數(shù)fun取最小

10、值時x值,fun為目標函數(shù)的表達 式字符串或MATLAB自定義函數(shù)的函數(shù)柄。x = fmi nbn d(fu n, x1,x2,optio ns) % optio ns為指定優(yōu)化參數(shù)選項x,fval = fminbn d()% fval為目標函數(shù)的最小值x,fval,exitflag = fminbn d()xitflag為終止迭代的條件x,fval,exitflag,output = fminbnd()% output為優(yōu)化信息函數(shù) fmin search格式x = fminsearch(fun,x0) %x0為初始點,fun為目標函數(shù)的表達式字符串或MATLAB自定義函數(shù)的函數(shù)柄。x =

11、fminsearch(fun,x0,options) % options查 optimsetx,fval = fminsearch( )% 最優(yōu)點的函數(shù)值x,fval,exitflag =fmin search() exitflag 與單變量情形一致x,fval,exitflag,output = fmin search()%output 與單變量情形一致函數(shù) fminunc 格式x = fminunc(fun,x0) %返回給定初始點x0的最小函數(shù)值點x = fminunc(fun, x0,optio ns) % opti ons為指定優(yōu)化參數(shù)x,fval = fminunc()%fval

12、最優(yōu)點x處的函數(shù)值x,fval,exitflag = fminunc()% exitflag為終止迭代的條件。x,fval,exitflag,output = fminunc()%output 為輸出優(yōu)化信息x,fval,exitflag,output,grad = fminunc()% grad 為函數(shù)在解x處的梯度值x,fval,exitflag,output,grad,hessia n = fminunc()%目標函數(shù)在解x處的海賽(Hessian )值3.2.2 約束非線性規(guī)劃問題非線性有約束的多元函數(shù)的數(shù)學模型為:min f (x)s.t. C(x)豈 0Ceq (x) =0A x

13、-bAeq x 二beqlb 乞x Eub其中:x、b、beq、lb、ub是向量,A、Aeq為矩陣,C(x)、Ceq(x)是返回向 量的函數(shù),f(x)為目標函數(shù),f(x)、C(x)、Ceq(x)可以是非線性函數(shù)。函數(shù) fmincon格式 x = fmi ncon(fun ,xO,A,b)x = fmincon(fun ,xO,A,b,Aeq,beq)x = fmincon(fun, xO,A,b,Aeq,beq,lb,ub)x = fmincon(fun, xO,A,b,Aeq,beq,lb,ub ,nonlcon)x = fmincon(fun, xO,A,b,Aeq,beq,lb,ub ,

14、nonlcon, opti ons)x,fval = fmincon( )x,fval,exitflag = fmincon()x,fval,exitflag,output = fmincon()x,fval,exitflag,output,lambda = fmincon()x,fval,exitflag,output,lambda,grad = fmincon()x,fval,exitflag,output,lambda,grad,hessia n = fmincon()323二次規(guī)劃問題二次規(guī)劃問題的數(shù)學模型為:min 1x Hx f x2s.t. A xzbAeq x =beq lb三

15、x :Sub 其中,H、A、Aeq為矩陣,f、b、beq、lb、ub、x為向量 其它形式的二次規(guī)劃問題都可轉(zhuǎn)化為標準形式。函數(shù) quadprog格式x = quadprog(H,f,A,b) % 其中H,f,A,b為標準形中的參數(shù),x為目 標函數(shù)的最小值。x = quadprog(H,f,A,b,Aeq,beq)%Aeq,beq 滿足等約束條件Aeq x = beq。x = quadprog(H,f,A,b,Aeq,beq,lb,ub) % lb,ub分別為解 x 的下界與上界。x = quadprog(H,f,A,b,Aeq,beq,lb,ub,xO) %xO為設置的初值x = quadpr

16、og(H,f,A,b,Aeq,beq,lb,ub,xO,opti ons) % opti ons 為指定的優(yōu)化參數(shù)x,fval = quadprog( )%fval為目標函數(shù)最優(yōu)值x,fval,exitflag = quadprog()% exitflag與線性規(guī)劃中參數(shù)意義相同x,fval,exitflag,output = quadprog()% output與線性規(guī)劃中參數(shù)意義相同x,fval,exitflag,output,lambda = quadprog()% lambda 與線性規(guī)劃中參數(shù)意義相同3.3最小、最大化問題最小、最大化問題的數(shù)學模型為:min max F(x)XFiS

17、.t.C(x) zOCeq(x) =0A x乞bAeq x =beqlb _x _ub其中:x、b、beq、lb、ub 是向量,A、Aeq 為矩陣,C(x)、Ceq(x)和 F(x) 是返回向量的函數(shù),F(xiàn)(x)、C(x)、Ceq(x)可以是非線性函數(shù)。優(yōu)化函數(shù) fmi nimax格式 x = fmini max(f un, x0)x = fmini max(fu n,xO,A,b)x = fmini max(f un, x0,A,b,Aeq,beq)x = fmin imax(fu n,xO,A,b,Aeq,beq,lb,ub)x = fmini max(fu n,x0,A,b,Aeq,beq

18、,lb,ub, nonIcon)x = fmini max(fu n,x0,A,b,Aeq,beq,lb,ub, non lc on,o ptio ns) x,fval,maxfval = fmini max()x,fval,maxfval,exitflag = fmini max()x,fval,maxfval,exitflag,output = fmini max()x,fval,maxfval,exitflag,output,lambda = fmini max()3.4多目標規(guī)劃問題多目標規(guī)劃是指在一組約束下,對多個不同目標函數(shù)進行優(yōu)化。它的一般形 式為min fdx), f2(x),

19、 fm(x)sub.togj(x)蘭 0j=1,2,,p其中:X =(X1,X2,Xj。在同一約束下,當目標函數(shù)處于沖突狀態(tài)時,不存在最優(yōu)解X使所有目標函 數(shù)同時達到最優(yōu)。此時,我們使用有效解,即如果不存在xS,使得fi(X)_fi(X*), i=1,2,m,則稱x*為有效解。在MATLAB,多目標問題的數(shù)學模型為:min imizes.t.F(x) - weight “ ;二goalC(x)乞 0Ceq(x) =0A x込bAeq x 二beqlb lx jub其中:x、b、beq、lb、ub 是向量;A、Aeq 為矩陣;C(x)、Ceq(x)和 F(x) 是返回向量的函數(shù);F(x)、C(x)、Ceq(x)可以是非線性函數(shù);weight為權(quán)值系 數(shù)向量,用于控制對應的目標函數(shù)與用戶定義的目標函數(shù)值的接近程度;goal為用戶設計的與目標函數(shù)相應的目標函數(shù)值向量;為一個松弛因子標量;F(x) 為多目標規(guī)劃中的目標函數(shù)向量。函數(shù) fgoalattain格式 x = fgoalatta in(fun, xO,goal,weight)x = fgoalatta in(fun, xO,goal,weight,A,b)x = fgoalatta in(fun, xO,goal,weight,A,b,

溫馨提示

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

評論

0/150

提交評論