help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cellfun and parcellfun


From: Robert Patterson
Subject: Re: cellfun and parcellfun
Date: Mon, 14 Jun 2010 18:46:46 +0100

On Mon, 2010-06-14 at 19:16 +0200, David Bateman wrote:
> Robert Patterson wrote:
> > On Fri, 2010-06-11 at 23:28 +0200, David Bateman wrote:
> >   
> >
> > I think I am doing something pretty stupid in trying to reset my RNGs:
> >
> > octave:187> rand("state", 123); rande()
> > ans =  0.042798
> > octave:188> rand("state", 123); rande()
> > ans =  0.49064
> > octave:189> rand("state", 123); rande()
> > ans =  4.2087
> >
> > I was expecting to get the same value each time.  Is the hash used to
> > initialise the Mersenne Twister non-deterministic?
> >
> > Thanks
> >
> > Robert
> >
> >
> >   
> The older randlib generators have the same base generator so the above 
> will work if you replace "state" by "seed". However the cost of that 
> will be speed and a short length of the pseudo random sequence...
> 
> The Mersenne Twister hash is deterministic but you have to initialize 
> each generator separately
> 
> octave:1> rande("state",123); rande()
> ans =  0.27640
> octave:2> rande("state",123); rande()
> ans =  0.27640
> octave:3> rande("state",123); rande()
> ans =  0.27640
> 
> D.
> 

This gradually became clear from the source.  However, in
S 17.4 Special Utility Matrices the manual states:

The new random generators all use a common Mersenne Twister generator,
and so the state of only one of the generators needs to be reset. The
old generator function use separate generators.

If I understand correctly, the manual is wrong.

Thanks

Robert




reply via email to

[Prev in Thread] Current Thread [Next in Thread]