0

我有一些问题要在malab中实施。我有 N(前导数)可供 K(设备数)选择。如何通过 K 个设备随机选择 N 个,所以一个前导码可能被多个设备选择?例如,有 10 个唯一的前导码(N=10)由 50 个设备(K=50)随机选择,一次没有重复,每个 K 设备只能从 10 个唯一的前导码中随机选择一个。我想从这 10 个独特的前导码中知道,只有一个设备只选择了多少个以及哪些前导码?多个设备选择了多少个前导以及哪些前导?如何在matlab中实现这个场景?我真的需要你尽快回复。谢谢。

4

2 回答 2

0

试试这个:

r = randperm(N*K); % generate a random permutation of the integers from 1 through N*K
r = mod(r(1:N:(K-1)*N+1), N); % the random selection results
[uniques,numUnique] = count_unique(r); % the selected preambles (uniques), and how many times they were selected (numUnique)

count_unique功能可以在这里找到

于 2012-07-22T16:52:16.910 回答
0

假设您的序言(无论您的应用程序中的什么)都在这里:

preambles = [12 13 14];
K = 6;

然后在 中生成一个随机索引向量preambles,如下所示:

random_indices = 1 + floor(rand(1, K) * length(preambles));

然后您可以将其插入preambles变量:

preambles(random_indices)
于 2012-07-22T07:10:33.993 回答