GWO structure help, please rewrite the code help

NumAgents = 7;
maxiters = 2000;
lb = [0 2];
ub = [1 5];
dim = 2;
fobj = @my_function_that_expects_a_vector_of_2_values;
GWO(Numagents, maxiters, lb, ub, dim, fobj)
I am executing this code after installing the GWO toolbox in my matlab directory.
error appears as:
Not enough input arguments.
Error in GWO (line 116)
set(handles.itertext,'String', ['The current iteration is ', num2str(l)])
Error in gwostrcture (line 14)
GWO(Numagents, maxiters, lb, ub, dim, fobj)
i am unable to detect the error. can any one help me to rectify this issue.

Respuestas (1)

Stephan
Stephan el 14 de Mzo. de 2019

0 votos

NumAgents = 7;
maxiters = 2000;
lb = [0 2];
ub = [1 5];
dim = 2;
fobj = @my_function_that_expects_a_vector_of_2_values;
[BestScore, BestPos, CG_Curve] = GWO(NumAgents, maxiters, lb, ub, dim, fobj)

8 comentarios

manish kumar
manish kumar el 14 de Mzo. de 2019
i am getting same error
Stephan
Stephan el 14 de Mzo. de 2019
Please show your function - this example works properly:
NumAgents = 7;
maxiters = 2000;
lb = [0 2];
ub = [1 5];
dim = 2;
fobj = @(x) x(1).^2+x(2).^2;
[BestScore, BestPos, CG_Curve] = GWO(NumAgents, maxiters, lb, ub, dim, fobj)
manish kumar
manish kumar el 14 de Mzo. de 2019
this is my function
f=
(4804161458172084915439888952351367*x1^2)/633825300114114700748351602688000 + (11024762890340132617008770664173683865571*x2^2)/332306998946228968225951765070086144000
Stephan
Stephan el 14 de Mzo. de 2019
Editada: Stephan el 14 de Mzo. de 2019
This will work:
NumAgents = 7;
maxiters = 2000;
lb = [0 2];
ub = [1 5];
dim = 2;
fobj = @(x) (4804161458172084915439888952351367*x(1).^2)/633825300114114700748351602688000+...
(11024762890340132617008770664173683865571*x(2).^2)/332306998946228968225951765070086144000;
[BestScore, BestPos, CG_Curve] = GWO(NumAgents, maxiters, lb, ub, dim, fobj);
easier and numerically the same:
fobj = @(x) 7.579630313443054*x(1).^2+33.176439031680047*x(2).^2;
manish kumar
manish kumar el 14 de Mzo. de 2019
lb = [0 2];
ub = [1 5];
dim = 2;
fobj = @(x) (4804161458172084915439888952351367*x(1).^2)/633825300114114700748351602688000+...
(11024762890340132617008770664173683865571*x(2).^2)/332306998946228968225951765070086144000;
[BestScore, BestPos, CG_Curve] = GWO(NumAgents, maxiters, lb, ub, dim, fobj);
ITS showing
Not enough input arguments.
Error in GWO (line 116)
set(handles.itertext,'String', ['The current iteration is ', num2str(l)])
Stephan
Stephan el 14 de Mzo. de 2019
Editada: Stephan el 14 de Mzo. de 2019
where are NumAgents and maxiters gone?
manish kumar
manish kumar el 14 de Mzo. de 2019
its were there in code but the error was same
Stephan
Stephan el 14 de Mzo. de 2019
For me it worked properly. I loaded the GWO down from this source:
and the code works without any problems.

Iniciar sesión para comentar.

Categorías

Etiquetas

Preguntada:

el 14 de Mzo. de 2019

Comentada:

el 14 de Mzo. de 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by