2013-09-29 51 views
0

我试图创建谁包含5个元素(从0到1)与2条件MATLAB矢量

  1. 所有元件必须是随机向量小于0.5
  2. 载体的总和需要是1

例如这个矢量是不允许的(因为一个元素大于0.5)

[0.6, 0.1, 0.1, 0.1, 0.1] 

例如这个矢量是不允许的(因为总和大于1)

[0.4, 0.2, 0.2, 0.2, 0.2] 

例如这个矢量被允许

[0.3, 0.25, 0.15, 0.15, 0.15] 
+0

那么你的问题是什么? – darthbith

+0

我的问题是如何获得我正在寻找的矢量,我不知道如何结合2条件... – S12000

回答

1

我已使用的值较小于0.5到做了同样的规模化随机数,然后归一化总和。

r = 0 + 0.45*rand(5,1); 
s = sum(r); 
norm_r = r/s 

范围总是小于0.5,和总是等于1。我不能告诉高达什么号码可以乘到兰特变量,但它必须是归一化后小于0.5,否则,一个号可能大于0.5。

+0

感谢它像一个魅力 – S12000