# Random algorithm

Fri Nov 14 12:38:36 CST 2008

```Dave Cragg wrote:

> On 13 Nov 2008, at 19:38, Richard Gaskin wrote:
>
>> Fortunately, it doesn't.  Rev sets the randomSeed to some non-fixed
>> number (a truncated portion of the milliseconds?) each time it starts.
>>
>> This implies that each session starts with a unique seed, so each
>> sequence derived from it will be similarly unique.
>
> This occurred to me last night while reviewing my comment on your
> seeding method. Does a different randomSeed guarantee a different
> random sequence in the same way that the same seed produces the same
> sequence?

"Guarantee" is a tough claim to verify, since it's possible that even a
truly random sequence might by chance appear as a repeated pattern. :)

But to test this I made a simple test stack with a button and two
fields, with this in the button script:

on mouseUp
put empty into fld 1
put empty into fld 2
--
-- Test 1: psuedo-random randomSeed:
repeat 2
set the randomseed to random(444444)
repeat 10
set the randomSeed to random(444444)
put random(10) &cr after fld 1
end repeat
put cr&cr after fld 1
end repeat
--
-- Test 2: fixed randomSeed:
repeat 2
set the randomseed to 10
repeat 10
set the randomSeed to random(10)
put random(10) &cr after fld 2
end repeat
put cr&cr after fld 2
end repeat
--
end mouseUp

Results:

Field 1:
1 5 10 8 8 6 4 4 9 3
1 4 10 10 9 3 9 7 3 9

Field 2:
1 1 6 8 1 1 6 8 1 1
1 1 6 8 1 1 6 8 1 1

This seems to support the hypothesis that using a fixed randomSeed will
result in the same sequence being generated even if you later set the
randomSeed using random(), but changing the randomSeed to a non-fixed
number changes the resulting sequence.

--