[sdiy] VERY cool/bizarre: Buchla noise

Richard Wentk richard at skydancer.com
Thu Sep 30 02:10:14 CEST 2004


At 23:28 29/09/2004 +0000, jblippard at comcast.net wrote:
>I think I respectfully disagree. If you are given the value contained in 
>the shift register at some arbitrary time, you will be able to predict the 
>next output value with 100% confidence, regardless of the register 
>length.  Of course, a long enough register won't repeat anytime soon (or 
>anytime for a long while).  But it's not random.

You're confusing two elements of randomness here - the process, and the 
perception. If you *didn't* know the values in the shift register and the 
logic network around it, the bit pattern that falls out is random, in the 
sense of being uncorrelated, to a very good approximation.

The fact that it's not truly random is why it's called a pseudo-random 
process. But functionally you can use the output in the same way you can 
use a truly random process. Perceptually, given a certain useful entropy 
requirement, they're identical. The fact that the pattern is completely 
deterministic only matters if you can reverse engineer the process from 
that pattern.

Of course it's possible to imagine a pattern search which tries to 
correlate a sequence with known pseudo-random sequences to give you the 
process. It's less easy to imagine situations where you'd need or want to 
do this. ;-)

>But it makes me wonder, is any finite bandwidth device truly random?  If 
>we had an exact quantum description of a the state of a noise-generating 
>transistor, couldn't we (with enough computing power) make some educated 
>assertions about the probability of how that noise value would change in 
>the next (arbitrarily small) time unit?

No, because quantum uncertainty is *truly* random. The quantum description 
defines a probability envelope, but what happens within that envelope is 
completely unpredictable.

>I guess the question my vague second paragraph is asking is this: does 
>true randomness need to be 100% unpredictable?  Or is it random enough 
>when the probability of a predicted value being so close to the actual 
>value that we can't measure the difference is equal to the probability of 
>the prediction being off by a detectable margin (i.e., only 50% predictable)?

Depends on the context. For some jobs - e.g. encryption - you want 
pseudo-randomness, because it means you can decode a message with a 
key/seed. But attempting a decrypt without a key is computationally 
impractical, and this makes the message secure.

For synthesis, the randomness doesn't really need to be all that random. A 
repeat time of a few tens of seconds is usually more than enough as a noise 
source. Even if you sample it with an S&H, you'll get a (near) perfectly 
random output just by making sure there's no correlation between the S&H 
clock and the noise clock.

I think a module which let you control the shift register rate and perhaps 
also feedback length/pattern under voltage control would be an interesting 
thing.

Richard





More information about the Synth-diy mailing list