2013-09-29 174 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