<font face="Default Sans Serif,Verdana,Arial,Helvetica,sans-serif" size="2"><div style=""><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Dear Fieldtrippers</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">I have just become aware of a 'feature' in matlabs randomization functions (rand, randi, randn and randperm).</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Every time matlab is restarted, the seed for the random number generator is reset.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Therefore these functions always produce the same number sequence after a restart.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">This seems a very unintuitive use of these functions.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">I would think that people who need this reproducability should manually set a seed for their random number generator.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Is this behaviour really wanted in FT?</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">I did a quick check and ran ft_freqstatistics with montecarlo method.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">The stat.posdistribution is obviously different when i run it consecutive times. </font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">However when I restart matlab I get exactly the same distributions again each time.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">I realize that in a standard analysis pipeline this is probably of absolutely no consequence. </font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">But I still think it should not be that way and one should at least be aware of the fact.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Even if it is not an issue for FT-analyses, this might very well be so for experimental procedures.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">E.g. some experimental stimuli are randomized for each subject.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Then they are presented in randomized order.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">By the time the next subject comes in, chances are high that the computer or at least matlab has been restarted. </font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">This subject will therefore recieve exactly the same 'randomized' list.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Mostly these stimuli randomizations are checked by running the randomization script multiple times. So everything seems to work.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Up to now at least I have never tested my scripts by restarting matlab after every run.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">And to catch this within the experiment is potentially impossible, depending on the procedure.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Fortunately there is an easy fix for this.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">rng('shuffle'); </font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">before using the randomization function shuffles the seed for the random number generator (hopefully randomly).</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Even if this is not an issue for FT directly, I think many people do not know about this suboptimal (in my opinion) behaviour of the randomization functions and run into trouble.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Appologies if this is an obvious and long known 'feature' to most of you.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">I hope it still helps some people getting strange results.</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><br></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Cheers</font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif">Maurice</font></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;"><br></div><br><br><br><font face="Verdana, Arial, Helvetica, sans-serif">---</font><br><font face="Verdana, Arial, Helvetica, sans-serif">University of Zürich</font><br><font face="Verdana, Arial, Helvetica, sans-serif">Maurice Göldi, MSc</font><br><font face="Verdana, Arial, Helvetica, sans-serif">Department of Psychology</font><br><font face="Verdana, Arial, Helvetica, sans-serif">Biopsychology</font><br><br><a href="mailto:maurice.goeldi@uzh.ch" style="font-family: Verdana, Arial, Helvetica, sans-serif;">maurice.goeldi@uzh.ch</a></div><div></div></font>