opt-steepest梯度下降法的matlab程序_第1頁
opt-steepest梯度下降法的matlab程序_第2頁
opt-steepest梯度下降法的matlab程序_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、理論考慮到函數(shù)f(x)在點xA(k)處沿著方向d的方向?qū)?shù)f_d(x%k)=Vf(xA(k)ATd,其意義為:f(x)在點xA(k)處沿著方向d的變化率。當(dāng)f連續(xù)可微時,方向?qū)?shù)為負,說明函數(shù)值沿著該方向下降;方向?qū)?shù)越小,表明下降越快。因此確定搜索方向dA(k)的一個想法,就是以f(x)在點xA(k)點方向?qū)?shù)最小的方向作為搜索方向,即令dA(k)=-Vf(xA(k)因此,把這方法定名為最速下降法。求解問題mint(xuRa門膽對(刈,丘心人1。最速下降法的具體步驟為選定初始點xA(1),和給定精度要求0,令k=1;若可用),則停,xA*=xA(k),否則令dA(k)=-Vf(xA(k);在

2、xA(k)處沿方向dA(k)作線性搜索得xA(k+1)=xA(k)+a_kdA(k),k=k+1,回2。若在第三步中,不用近似方法做線搜索,而是用精確線搜索,即a_k=argminf(xA(k)+adA(k)argminf(x)”,表示f(x)的極小點。最速下降法,就是求梯度。例如:求f=(x-y)/(xA2+yA2+2)在(-3,-2)處的梯度。clc;clearx=-3;y=-2f=(x-y)/(xA2+yA2+2)fx=diff(f,x)%對x求偏導(dǎo)數(shù)fy=diff(f,y)%對y求偏導(dǎo)數(shù)g=fxfy%梯度g=subs(g)%把符號變量轉(zhuǎn)為數(shù)值functionxo,fo=Opt_Stee

3、pest(f,grad,x0,TolX,TolFun,dist0,MaxIter)%用最速下降法求最優(yōu)化解%輸入:f為函數(shù)名grad為梯度函數(shù)%x0為解的初值TolX,TolFun分別為變量和函數(shù)的誤差閾值%dist0為初始步長MaxIter為最大迭代次數(shù)%輸出:xo為取最小值的點fo為最小的函數(shù)值%f0=f(x(0)%判斷輸入的變量數(shù),設(shè)定一些變量為默認(rèn)值ifnargin7MaxIter=100;%最大迭代次數(shù)默認(rèn)為100endifnargin6dist0=10;%初始步長默認(rèn)為10endifnargin5TolFun=1e-8;%函數(shù)值誤差為1e-8endifnarginfx1+TolFu

4、n&fx1fx1=kmax1warning=warning+1;%無法確定最優(yōu)步長elsewarning=0;endifwarning=2|(norm(x-x0)TolX&abs(fx-fx0)TolFun)break;endx0=x;fx0=fx;endxo=x;fo=fx;ifk=MaxIterfprintf(Justbestin%diterations,MaxIter);end%xiajiangfa.m用最速下降法求解最優(yōu)化問題f1=inline(x(1)A2+4*x(2)A2,x);%目標(biāo)函數(shù)grad=inline(2*x(1),8*x(2),x);%目標(biāo)函數(shù)的梯度函數(shù)x0=11;%x0為搜索初始值TolX=1e-4;%TolX為最優(yōu)值點間的誤差閥值TolFun=1e-9;%TolFun為函數(shù)的誤差閥值MaxIter=2;%MaxIter為最大迭代次數(shù)xo,fo=Opt_Steepest(f1,grad,xO,To

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論