2014-10-29 79 views
1

我在写一个粒子群优化程序,为此我想初始化我的粒子。我希望我的粒子从我正在应用群优化的列中随机初始化。 我正在做Octave中的程序。我试图寻找相关的命令,但coundt找到一个。我想要矩阵形式的答案。
帮助表示赞赏。
对于防爆
如何从八度矩阵的列中随机选择n个数字

733 
590 
495 
479 
569 
560 
305 
433 
319 
244 
256 
255 
398 
340 


从这个我想5号像
305 590 495 244 340
帮助表示赞赏。

回答

3
X = magic(10); 

% pick k random numbers for column n: 

k = 4; 
n = 3; 
X(randi(size(X,1), k, 1), n) 
+0

非常感谢@丹和是我的解决方案并没有给出正确的答案,因此我删除了它 – 2014-10-29 12:55:24

+1

只是要注意,它不neccesarily拾取所有不同的数字。如果两个粒子在相同的位置初始化,那么@SarasArya会是一个问题吗? – 2014-10-29 15:01:23

+0

@DennisJaheruddin正确,在这种情况下,而不是使用'randperm' – Dan 2014-10-29 15:04:02

相关问题