Is Randomizer Module really bad?

Discussion in 'REAKTOR' started by DoronkySadjonky, Mar 8, 2019.

  1. DoronkySadjonky

    DoronkySadjonky New Member

    Messages:
    19
    I seem to get very predictable results with a Randomizer module. Any reason for this? See included image. Sending two Randomizers constant events and then allowing it to graph out on an XY (with 100% fade time) - you can see that it only gives results on two lines. Weird right?

    The only way around this I've found is to make the instrument have two Voices and taking each voice separately - but even then its not so random (but at least not noticeable) - see second image.

    Is Reaktor really so bad at random numbers? Any ideas?
     

    Attached Files:

  2. salamanderanagram

    salamanderanagram NI Product Owner

    Messages:
    3,441
    'random' generators aren't actually random, they are pseudo-random... which means with the same 'seed' value (that's the number feeding into the 'set random' module here, which isn't really necessary) you can get the same sequence of values every time. what's more, one value to the next is determined by a math function, and apparently when you graph them in this way you can easily see the pattern, even if that pattern is very hard to determine usually...

    basically what you're seeing there is how one 'random' number will relate to the next number in the pseudo-random sequence. honestly i had no idea it was that bad though.

    anyway, this works much better:
    upload_2019-3-7_19-57-17.png

    essentially by adding the extra randomizer, you skip a bunch of values in the pseudo random sequence, giving a much better random feel...

    :rolleyes:o_O

    weird, huh?
     
    Last edited: Mar 8, 2019
    • Like Like x 1
  3. DoronkySadjonky

    DoronkySadjonky New Member

    Messages:
    19
    Crazy~ What a weird workaround...

    Yeah, I figured it was a seeding issue, but I just thought Reaktor coders would have thought about this already. I feel like I also had similar issues with the Slow Random LFO but I'll have to double check. If i remember correctly Max/MSP lets you choose your random seed for each object, maybe NI should think of incorporating that in the future - I'll add it to the "Feature Suggestions" in case anyone checks that~

    Anyway, thanks for the workaround - super weird, but thank god one exists~ Thanks for the tip - I'll definitely use it:thumbsup:
     
  4. mosaic_

    mosaic_ NI Product Owner

    Messages:
    489
    If you don't mind hopping into Core, there's a seedable random number generator available. You could use something nondeterministic like CPU load to set the seed if you like.
     
  5. colB

    colB NI Product Owner

    Messages:
    3,072
    Yes. You can also use voice ID so that different polyphonic voices get different random seeds.
    Another option in core is to externalise the OBC so that different RND generations all share the same state variable - that way, each instance gets the next random number in the sequence and you only need one seed.
     
    • Like Like x 1
  6. DoronkySadjonky

    DoronkySadjonky New Member

    Messages:
    19
    Perfect~ I've always avoided core, but maybe this is an incentive to finally learn it. Core Random generator seems to solve this quite easily :thumbsup:
     
  7. Paule

    Paule NI Product Owner

    Messages:
    5,664
    If you use the 'Set Random' module can it solve your issues? It work inside one instrument only.