• 大小: 1KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: Matlab
  • 标签:

资源简介

全局最优方法——随机行走法的matlab实现,移植性强。

资源截图

代码片段和文件信息

function[mx minf] = Opt_RandWalk(x lamda N n)
%{ 
函数功能:随机行走法求函数的极小值
x:初始值;
lamda:步长;
N:为了产生较好点的迭代次数;
n:单步循环行走次数,目的是尽可能走到全局最优点附近
mx:最优解;
minf:最优值。
[mx minf] = Opt_RandWalk([0 0] 10 100 10)
%}
F = zeros(n 1);
D = length(x);
X = zeros(n D);
epsilon = 1e-5;
f1 = func(x);
while lamda  >= epsilon
    k = 1;
    while(k <= N)
        u = 2*rand(10 D) - 1;
        for ii =1 : n
            X(ii :) = x + lamda*(u(ii :) / norm(u(ii :)));
            F(ii) = func(X(ii :));
        end
        [f11 kk] = min(F);
  

评论

共有 条评论

相关资源