日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

newton迭代法求近似值matlab,Newton迭代法求函数极小值点 Matlab程序

發布時間:2023/12/2 循环神经网络 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 newton迭代法求近似值matlab,Newton迭代法求函数极小值点 Matlab程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

clear all

clc

%Newton迭代法求解極小值點

%090311

%=====================================

%定義函數

disp '函數 f(x) 為:'

syms x1 x2

f=(x1-2)^4+(x1-2)^2*x2^2+(x2+1)^2

disp '初始點的值:'

x0=[1;1]

%=====================================

%求函數的梯度和海色陣

disp '函數f的梯度:'

g=jacobian(f,[x1;x2])

disp '函數f的Hesse矩陣:'

G=jacobian([g(1);g(2)],[x1,x2])

%=====================================

%定義迭代的最大次數

n=10;

%=====================================

%一些初始值的計算

g0=subs(g,{x1,x2},{x0(1),x0(2)})';

G0=subs(G,{x1,x2},{x0(1),x0(2)});

f0=subs(f,{x1,x2},{x0(1),x0(2)});

%=====================================

%迭代點集合 x和函數值F的初始化

x=zeros(2,n);

F=zeros(1,n);

%運用Newton方程解出下一近似值

x(:,1)=x0-inv(G0)*g0; %注:用點乘有誤

A=x(:,1);

F(1)=subs(f,{x1,x2},{A(1),A(2)});

%=====================================

%定義誤差初始值為10

deta=10;

i=1;

%循環用求出的近似解迭代Newton方程

%求出下一個近似解,并在規定的誤差范圍內

while deta>=1e-10&i<10

A=x(:,i);

gi=subs(g,{x1,x2},{A(1),A(2)})';

Gi=subs(G,{x1,x2},{A(1),A(2)});

i=i+1;

x(:,i)=x(:,i-1)-inv(Gi)*gi;

A=x(:,i);

F(i)=subs(f,{x1,x2},{A(1),A(2)});

deta=F(i)-F(i-1);

end

k=(1:n+1)';

F=[f0 F]';

x=[x0,x]';

disp '====================================================='

disp '迭代的各步結果如下:'

disp ' k x(k) F{x(k)}'

[k x F]

%===================================== 

總結

以上是生活随笔為你收集整理的newton迭代法求近似值matlab,Newton迭代法求函数极小值点 Matlab程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。