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

资源简介

差分进化算法的Matlab代码,可运行,注释清楚 差分进化算法的Matlab代码,可运行,注释清楚

资源截图

代码片段和文件信息

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Function:         [FVr_bestmemS_bestvalI_nfeval] = deopt(fnameS_struct)
%                    
% Author:           Rainer Storn Ken Price Arnold Neumaier Jim Van Zandt
% Description:      Minimization of a user-supplied function with respect to x(1:I_D)
%                   using the differential evolution (DE) algorithm.
%                   DE works best if [FVr_minboundFVr_maxbound] covers the region where the
%                   global minimum is expected. DE is also somewhat sensitive to
%                   the choice of the stepsize F_weight. A good initial guess is to
%                   choose F_weight from interval [0.5 1] e.g. 0.8. F_CR the crossover
%                   probability constant from interval [0 1] helps to maintain
%                   the diversity of the population but should be close to 1 for most. 
%                   practical cases. Only separable problems do better with CR close to 0.
%                   If the parameters are correlated high values of F_CR work better.
%                   The reverse is true for no correlation.
%
%                   The number of population members I_NP is also not very critical. A
%                   good initial guess is 10*I_D. Depending on the difficulty of the
%                   problem I_NP can be lower than 10*I_D or must be higher than 10*I_D
%                   to achieve convergence.
%
%                   deopt is a vectorized variant of DE which however has a
%                   property which differs from the original version of DE:
%                   The random selection of vectors is performed by shuffling the
%                   population array. Hence a certain vector can‘t be chosen twice
%                   in the same term of the perturbation expression.
%                   Due to the vectorized expressions deopt executes fairly fast
%                   in MATLAB‘s interpreter environment.
%
% Parameters:       fname        (I)    String naming a function f(xy) to minimize.
%                   S_struct     (I)    Problem data vector (must remain fixed during the
%                                       minimization). For details see Rundeopt.m.
%                   ---------members of S_struct----------------------------------------------------
%                   F_VTR        (I)    “Value To Reach“. deopt will stop its minimization
%                                       if either the maximum number of iterations “I_itermax“
%                                       is reached or the best parameter vector “FVr_bestmem“ 
%                                       has found a value f(FVr_bestmemy) <= F_VTR.
%                   FVr_minbound (I)    Vector of lower bounds FVr_minbound(1) ... FVr_minbound(I_D)
%                                       of initial population.
%                                       *** note: these are not bound constraints!!

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-09-11 10:16  差分进化算法matlab程序\
     文件          55  2018-08-27 11:33  差分进化算法matlab程序\【源码使用必读】.url
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\Chebychev\
     文件        2190  2002-01-24 22:18  差分进化算法matlab程序\DE algorithm\Chebychev\objfun.m
     文件        1453  2002-01-24 23:05  差分进化算法matlab程序\DE algorithm\Chebychev\PlotIt.m
     文件        4972  2004-06-17 21:51  差分进化算法matlab程序\DE algorithm\Chebychev\Rundeopt.m
     文件       15782  2004-06-17 21:53  差分进化算法matlab程序\DE algorithm\deopt.m
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\Eggholder\
     文件        1403  2002-03-14 22:43  差分进化算法matlab程序\DE algorithm\Eggholder\objfun.m
     文件        2716  2004-01-26 23:03  差分进化算法matlab程序\DE algorithm\Eggholder\PlotIt.m
     文件        3682  2004-06-17 21:51  差分进化算法matlab程序\DE algorithm\Eggholder\Rundeopt.m
     文件        1803  2002-01-24 22:58  差分进化算法matlab程序\DE algorithm\left_win.m
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\Michalewicz\
     文件        1407  2002-03-03 15:48  差分进化算法matlab程序\DE algorithm\Michalewicz\objfun.m
     文件        2704  2004-01-26 23:07  差分进化算法matlab程序\DE algorithm\Michalewicz\PlotIt.m
     文件        3742  2004-06-17 21:51  差分进化算法matlab程序\DE algorithm\Michalewicz\Rundeopt.m
     文件        2190  2002-01-24 22:18  差分进化算法matlab程序\DE algorithm\objfun.m
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\Peaks\
     文件        1298  2002-02-25 23:01  差分进化算法matlab程序\DE algorithm\Peaks\objfun.m
     文件        2403  2002-03-03 15:00  差分进化算法matlab程序\DE algorithm\Peaks\PlotIt.m
     文件        3582  2004-06-17 21:52  差分进化算法matlab程序\DE algorithm\Peaks\Rundeopt.m
     文件        1453  2002-01-24 23:05  差分进化算法matlab程序\DE algorithm\PlotIt.m
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\Rastrigin\
     文件        1713  2004-01-24 23:57  差分进化算法matlab程序\DE algorithm\Rastrigin\objfun.m
     文件        2639  2004-01-26 23:04  差分进化算法matlab程序\DE algorithm\Rastrigin\PlotIt.m
     文件        3711  2004-06-17 21:52  差分进化算法matlab程序\DE algorithm\Rastrigin\Rundeopt.m
     文件         986  2007-03-06 22:17  差分进化算法matlab程序\DE algorithm\Readme_DeMat.txt
     目录           0  2018-09-11 10:14  差分进化算法matlab程序\DE algorithm\Rosenbrock\
     文件        1319  2002-02-08 22:24  差分进化算法matlab程序\DE algorithm\Rosenbrock\objfun.m
     文件        2530  2002-03-03 15:09  差分进化算法matlab程序\DE algorithm\Rosenbrock\PlotIt.m
............此处省略7个文件信息

评论

共有 条评论