SRL Archive - RS3 Help

random() vs gaussRandom()


HKbotz

2015-01-23 09:18:24

I am curious as to what people use, what is preferred, and what looks more human like? I assume gaussRandom() since the distribution is more towards the middle, and isn't as evenly distributed, which people aren't when they do things. So far I've just been using random, but if gauss is more human-like I will switch to that instead.

KeepBotting

2015-01-23 09:59:40

Gaussian distribution is a probability curve that follows the bell curve model. Any single value will fall between two limits, with the curve approaching 0 on each side.

This is more useful because if you've got a set of random variables observed from the same distribution, they are always distributed approximately normally (i.e. along the bell curve)

So using Gaussian, you'll end up with a situation such as this, where n is the number of times observations are performed:


Versus a truly random distribution. Gaussian distribution = normal distribution = bell curve. Random is just … random.

HKbotz

2015-01-23 10:12:35

Yeah I knew the distribution, I was just wondering if it looks more human-like, which I'm assuming it does cause humans are never truly random. I think I will start using Gaussian instead of just normal random. Besides it looks fancy ;)

KeepBotting

2015-01-23 10:16:39

From: HKbotz
Yeah I knew the distribution, I was just wondering if it looks more human-like, which I'm assuming it does cause humans are never truly random. I think I will start using Gaussian instead of just normal random. Besides it looks fancy ;)


Yes, in practical terms Gaussian is more "human-like." In statistics, recording data involving humans will always exhibit a Gaussian trend (bell curve) with the majority of observations trending towards the mean (middle) and the outliers nearing the outside where the curve zeroes out

HKbotz

2015-01-23 10:17:53

From: KeepBotting
Yes, in practical terms Gaussian is more "human-like." In statistics, recording data involving humans will always exhibit a Gaussian trend (bell curve)


Ok cool. I was pretty sure that was the case but thought I'd check with some people on here anyway to get their opinions. Thank you :)

Turpinator

2015-01-23 10:45:49

From: KeepBotting

Versus a truly random distribution. Gaussian distribution = normal distribution = bell curve. Random is just … random.


Actually, the pseudo random number generators arent technically random. But anyway, they provide a uniform distribution as seen here.
var
i, zero, one, two, three, four: integer;
begin
for i := 0 to 99999 do
case random(5) of
0: zero := zero + 1;
1: one := one + 1;
2: two := two + 1;
3: three := three + 1;
4: four := four + 1;
end;

writeln('zero = ', zero);
writeln('one = ', one);
writeln('two = ', two);
writeln('three = ', three);
writeln('four = ', four);
end.

zero  = 19905
one = 20053
two = 20104
three = 19937
four = 20001

So as we can see, out of 10k runs, they are all occur about 2k times.

To add to it…
https://villavu.com/forum/showthread.php?t=100647&p=1218692#post1218692
http://i.imgur.com/nOGSlMq.png

fastler

2015-01-23 10:55:27

And the same thing using Gauss returned this:

zero = 646
one = 19625
two = 59444
three = 19685
four = 600

Clarity

2015-01-23 13:54:10

Whether it's more human in my opinion depends on the situation. I often use randoms on the macro level to influences gaussrandoms on the micro level. E.G. I randomly choose the script's overall mood (tired, energetic, spastic, etc), which influences gauss-based mouse movements, action choices, etc.

With botwatch's current capabilities though, I'm doubtful this subtlety makes any difference.

HKbotz

2015-01-24 00:06:02

From: Clarity
Whether it's more human in my opinion depends on the situation. I often use randoms on the macro level to influences gaussrandoms on the micro level. E.G. I randomly choose the script's overall mood (tired, energetic, spastic, etc), which influences gauss-based mouse movements, action choices, etc.

With botwatch's current capabilities though, I'm doubtful this subtlety makes any difference.


That's a really good idea. I'm all for making it as human as possible, better safe than sorry in my opinion.