-
大小: 3KB文件類型: .rar金幣: 2下載: 0 次發布日期: 2024-01-26
- 語言: 其他
- 標簽: newton??convex??optimization??matlab??
資源簡介
在含有等式約束的凸優化問題中,分別對初始點為可行點、初始點為不可行點以及對偶問題利用Newton下降法求解

代碼片段和文件信息
function?[?figureHandlecalTime]??=?Dual_Newton(VMaxCalTimeerralphabetaAbstyle)
%DUAL_NEWTON?Summary?of?this?function?goes?here
%???無約束問題,可用標準牛頓法解
for?calTime=1:MaxCalTime
????%計算newton方向及減量
????Gradient=b-A*exp(-A‘*V-1);??????????????????%求梯度
????Hess=A*diag(exp(-A‘*V-1))*A‘;???????????????%求Hess矩陣
????Vnt=-Hess\Gradient;?????????????????????????%牛頓方向
????Lamd2=Gradient‘*(Hess^-1)*Gradient;?????????%牛頓減量????
????output(calTime)=b‘*V+sum(exp(-A‘*V-1));??????%輸出目標函數值
????
????%判斷停止牛頓減量
????if?Lamd2<=2*err
????????break;
????end
????
????%回溯搜索法
????t=1;
????while?b‘*(V+t*Vnt)+sum(exp(-A‘*(V+t*Vnt)-1))>=b‘*V+sum(exp(-A‘*V-1))+alpha*t*Gradient‘*Vnt
????????t=beta*t;
????end
????V=V+t*Vnt;
end
output2(1:calTime)=output(1:calTime)-output(calTime);?%計算偏離值
figureHandle=semilogy(output2style);
display(‘迭代次數:‘);
display(num2str(calTime));
xlabel(‘迭代次數k‘);
ylabel(‘log(f(v)-g*)‘);
display(‘最優值為:‘);
display(num2str(output(calTime)));
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1055??2011-11-21?14:29??附件\Dual_Newton.m
?????文件???????1626??2011-11-21?14:29??附件\Main.m
?????文件???????1354??2011-11-21?14:27??附件\Newton1.m
?????文件???????1354??2011-11-21?14:27??附件\Newton2.m
?????文件????????155??2011-11-21?14:44??附件\說明.txt
?????目錄??????????0??2011-11-21?14:41??附件
-----------?---------??----------?-----??----
?????????????????5544????????????????????6
評論
共有 條評論