0

2つの条件で5つの要素(0から1まで)を含むランダムベクトルを作成しようとしています

  1. すべての要素は 0.5 より小さい必要があります
  2. ベクトルの合計は 1 である必要があります

たとえば、このベクトルは許可されていません (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]
4

1 に答える 1

1

0.5 未満の値を使用して乱数をスケーリングし、合計を正規化して同じことを行いました。

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

範囲は常に 0.5 未満で、合計は常に 1 です。rand 変数に乗算できる数値はわかりませんが、0.5 未満でなければなりません。

于 2013-09-29T01:24:12.870 に答える