⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_cost_func1.m

📁 模拟退火的源代码。关于matlab的大家好好学习以下吧
💻 M
字号:
function [cost_value, cost_flag] = test_cost_func1 (x)
%
%  $Id: test_cost_func1.m,v 1.27 2004/10/03 03:23:06 ssakata Exp ssakata $
%
s_i = 0.2;
t_i = 0.05;
c_r = 0.15;

q_n = 0.0;
parameter_dimension = 4;

for i = 1 : parameter_dimension,
  j = mod(i-1,4);
  switch (j)
     case 0, d_i = 1.0;
     case 1, d_i = 1000.0;
     case 2, d_i = 10.0;
     otherwise, d_i = 100.0;
  end
  if x(i) > 0.0
    k_i = fix(x(i) / s_i + 0.5);
  elseif x(i) < 0.0
    k_i = fix(x(i) / s_i - 0.5);
  else
    k_i = 0;
  end

  if abs (k_i * s_i - x(i)) < t_i
    if k_i < 0
      z_i = k_i * s_i + t_i;
    elseif k_i > 0
      z_i = k_i * s_i - t_i;
    else
      z_i = 0.0;
    end
    q_n = q_n + c_r * d_i * z_i * z_i;
  else
    q_n = q_n + d_i * x(i) * x(i);
  end
end;  
cost_value = q_n;
cost_flag=1;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -