我知道有很多伪随机化的技巧,但是这一个,我不能搜索它,所以我把它放在这里。
我正在使用MATLAB 2018a。我一直在尝试建立一个有10个条件的行为实验。每种情况都有50次试验。这导致总共有500次试验。我想将试验序列伪随机化,这样相同的情况不会连续出现超过三次。
我认为这不是那么困难,因为我有很多条件,但我通过谷歌找到的一些方法有一些小问题。我使用的方法之一是使用'unique(find(diff(seq)==0))‘提取索引,重新随机化它,并用原始的冗余序列替换它。(Link),但此方法存在一个问题,即它会随机更改条件的总数。如果你想对每个条件进行40次试验,那么在某些情况下会得到39次试验,而在其他情况下会有41次试验。
我的问题是,在解决上述问题的同时,如何改进这种方法,使其具有没有一个条件重复三次的约束。或者会有更好的方法吗?
https://stackoverflow.com/questions/52068265
复制相似问题