%阻尼牛顿法求解minf(x)=(1-x1)^2+2*(x2-x1^2)^2初始点x=(0,0)精度为0.01
%初始化,给定初始点和精度
clc;
clear all
x=[0 0]';
c=0.01;
k=0;
%阻尼牛顿法迭代
while gradval(x(1),x(2))>c
k=k+1;
syms v
%求出点x处的hessen矩阵
hessinv=inv(hessen(x(1),x(2)));
%确定搜索方向
p=-hessinv*grad(x(1),x(2))';
%确定minf(x+vp)的最优解v0
x0=sym(x+v*p);
x1=x0(1);
x2=x0(2);
% funval=sym((1-x1)^2+2*(x2-x1^2)^2);
funval=sym(60-10*x1-4*x2+x1^2+x2^2-x1*x2);
dv=diff(funval,'v');
v0=subs(solve(dv));
%保留v的实数根
for i=1:length(v0)
if isreal(v0(i))==1
v0_real(i)=v0(i);
end
end
%确定最小函数值对应的v实数根
%min为确定最小函数值对应的驻点的函数
if length(v0_real)>1
v0=minval(v0_real,p,x);
else
v0=v0_real;
end
x=x+v0*p;
end
min=x(1)^3+x(2)^3-3*(x(1)+x(2));
x
min
阻尼牛顿法_newton_matlab源码
版权申诉
5星 · 超过95%的资源 85 浏览量
2022-03-14
23:01:36
上传
评论
收藏 14KB ZIP 举报
阿里matlab建模师
- 粉丝: 3230
- 资源: 2782
最新资源
- 基于matlab实现车牌识别程序,和论文,自己做的,做毕业设计的可以看看 .rar
- Windows系统下安装与配置Neo4j的步骤
- 基于matlab实现潮流计算和最优潮流计算的程序1,对毕业设计有一定用处.rar
- 基于大数据学习资源推荐系统的设计与实现(部署视频)-kaic.mp4
- 哈工大形式语言和自动机2022期末含答案
- Windows系统下安装与配置Neo4j的步骤
- 哈希算法(Hash Algorithm)是一种将任意长度的二进制数据映射为较短的、固定长度的二进制值的函数.txt
- Windows系统下安装与配置Neo4j的步骤
- 在二叉树或更复杂的树形结构中,先序输出叶结点.txt
- 列出所有祖先结点的概念通常与树形结构或图论中的节点相关.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
- 3
前往页