in the class shown .. I got the errors as below:
1.
"Invalid default value for property 'VarSize' in class 'particle':Undefined function or variable 'nVar'."
2.
"particle Undefined function or variable 'VarMin'. Error in particle (line 45) obj.position = unifrnd(VarMin, VarMax, VarSize); "
3.
"particle Undefined function or variable 'CostFunction'. Error in particle (line 51) obj.cost = CostFunction(obj.position); "
code is:
classdef particle %PARTICLES Summary of this class goes here
% Detailed explanation goes here
properties CostFunction = @(x) Sphere(x); % Cost Function
nVar = 2; % Number of Unknown (Decision) Variables
VarSize = nVar; % Matrix Size of Decision Variables
VarMin = -10; % Lower Bound of Decision Variables
VarMax = 10; % Upper Bound of Decision Variables
MaxIt = 100; % Maximum Number of Iterations
nPop = 50; % Population Size (Swarm Size)
w = 1; % Inertia Coefficient
c1 = 2; % Personal Acceleration Coefficient
c2 = 2; % Social (Global) Acceleration Coefficient
position = []; velocity = []; cost = []; bestPosition = []; bestCost = []; end methods function z = sphere(x) z = sum(x.^2); end function [ obj ] = particle( varargin ) % Generate Random Solution
obj.position = unifrnd(VarMin, VarMax, VarSize); % Initialize Velocity
obj.velocity = zeros([1 2]); % Evaluation
obj.cost = CostFunction(obj.position); % Update the Personal Best
obj.bestPosition = obj.position; obj.bestCost = obj.cost; end endend
Best Answer