【文件属性】:
文件名称:rosenbrock函数Matlab代码-GradientDescentAlgorithm:局部极小值的梯度下降算法
文件大小:28KB
文件格式:ZIP
更新时间:2021-06-17 03:14:48
系统开源
Rosenbrock函数Matlab代码局部最小化器的梯度最速下降法
该项目演示了如何找到该算法在任何维度(1、5、10、100、200、300)的函数的局部极小值。
代码实现
代码在
Matlab
R2018b
中实现。
描述
此代码演示了
[-2,2]
区间的
5
维
Rosenbrock
函数的局部最小化。
此外,代码可用于任何维度的任何功能。
必须考虑的一点是分配初始值。
不同的初始值可能给出不同的局部极小值。
在这个问题中,我们希望找到一个多维函数的局部极小值。
这个项目中有四个脚本。
'gradient.m'
文件是取函数的梯度。
'func.m'
文件用于函数。
您可以更改函数并尝试找到任何函数的局部最小值。
'secantmethod.m'
是对
alpha
的一维搜索。
'mainscript.m'
结合其他文件和运行代码。
下面给出初始点。
x
=
[-1
1
-0.5
-0.7
-2]
执行
要运行此示例,只需在
Matlab
的命令行中编写
run
mainscript.m
输出将如下所示
Minimum
point
of
the
function
:
x
【文件预览】:
GradientDescentAlgorithm-master
----mainscript.m(728B)
----secantmethod.m(911B)
----Plots()
--------averageiter.png(12KB)
--------averagecomputation.png(14KB)
----readme.md(2KB)
----gradient.m(307B)
----func.m(189B)