function [Destination_fitness,Destination_position,Convergence_curve]=IVY(N,Max_iteration,lb,ub,dim,fobj)
CostFunction = @(x) fobj(x);
VarMin = lb; %Variables Lower Bound
VarMax =ub ; %Variables Upper Bound
%% IVYA Parameters
MaxIt = Max_iteration; % Maximum Number of Iterations
nPop = N; % Population Size
VarSize = [1 dim]; % Decision Variables Matrix Size
%% Initialization
% Empty Plant Structure
empty_plant.Position = [];
empty_plant.Cost = [];
empty_plant.GV= [];
pop = repmat(empty_plant, nPop, 1); % Initial Population Array
for i = 1:numel(pop) %fi 数组中数据元素的数量
% Initialize Position
%% Eq.(1)
pop(i).Position = unifrnd(VarMin, VarMax, VarSize); %Continuous uniform random numbers r = unifrnd(a,b) 从具有下部端点 a 和上部端点 b 的连续均匀分布中生成一个随机数。
%% Eq.(6)-upper condition %
pop(i).GV=(pop(i).Position /(VarMax-VarMin));
% Evaluation
pop
Optimization based on the smart behavior of plants with its engineering applications: Ivy代码解读
于 2024-07-26 16:15:47 首次发布