为什么unifrnd(磅,乌兰巴托,[nPop D])给错误?

11视图(30天)
Sadiq阿克巴
Sadiq阿克巴 2020年12月26日
评论道: 里克 2021年1月3日
为什么下面的代码提供了错误呢?
磅= [0 0 0 0];乌兰巴托=(10 10ππ);nPop = 30;D = 4;
unifrnd(磅,乌兰巴托,[nPop D])
错误使用unifrnd
大小不一致的信息。
1评论
里克
里克 2021年1月3日
删除评论中可以找到 谷歌缓存 (归档的版本需要修改属性,显示/隐藏的注释切换执行不正常)。

登录置评。

答案(1)

埃米尔哈姆萨
埃米尔哈姆萨 2020年12月26日
这不能在单个调用unifrnd完成。你需要一个循环
磅= [0 0 0 0];乌兰巴托=(10 10ππ);nPop = 30;
D =元素个数(磅);
M =兰德(nPop D);
i = 1: D
米:我)= unifrnd(磅(i),乌兰巴托(我),[nPop 1]);
结束
31日评论
Sadiq阿克巴
Sadiq阿克巴 2020年12月28日
此外,我咆哮的时候用自己的老适应度函数(chnages之前),这给了错误为:
下标赋值尺寸不匹配。
错误在fun2sn0(13号线)
[~,ix1 (ix)] = (b)进行排序;%临时存储算法随机生成的向量“最好”
错误GQPSO(54行)
f_x (i) =函数宏指令(有趣,x(我,:));
错误myfit_driver(2行)
[xmin, fmin histout] = GQPSO (@fun2sn0 4 30日[0 0 0 0],[10 10ππ),2000年,10000 * 4);

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!