我具有以下实现PSO的代码,但是它无法使用简单的函数:norm(A),其中A是矩阵。
这是代码,
fun=@(X) norm([X(1,1),X(1,2); X(2,1), X(2,2)]);
rng default % For reproducibility
lb = [-10,-15];
ub = [15,20];
nvars = 4;
x = particleswarm(fun,nvars,lb,ub)
我该如何解决?
只需更改函数的符号,作为向量的条目。
fun=@(X) norm([X(1),X(2), X(3), X(4)]);
rng default % For reproducibility
lb = [-10,-15];
ub = [15,20];
nvars = 4;
x = particleswarm(fun,nvars,lb,ub)