Matlab 如何在矩阵范数中使用粒子群优化算法
我有以下实现PSO的代码,但它不适用于简单的函数:norm(A),其中A是一个矩阵 这是代码Matlab 如何在矩阵范数中使用粒子群优化算法,matlab,optimization,particles,swarm,Matlab,Optimization,Particles,Swarm,我有以下实现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)
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)
particleswarm
将长度为nvars
的行向量传递给fun
,因此X
不是矩阵。@rinkert您想给出答案吗?