Thank you Measure. I think that is an OK result for zero preparation but I expected it to do better given that is it based on a small linear congruential generator + noise.
One of the main parts of my scoring system is a program that compares the relative frequency of various substrings of equal length, such as “0000” vs. “0101″. It calculates a score for each string using this method and then looks at what fraction of a large population of truly random strings have a lower score than the sample string. Your first string scored better than 40% of random strings on this metric, and your second string was better than only 1.4% (mostly because it has so many more ones than zeros − 57:93).
Keep in mind that these scores are assuming an equal mix of truly random and user-submitted strings, and the actual guesses depend on how good the other submissions are. If everyone submitted very strongly random strings, all my guesses would be around 50%. (My highest guess on any string was 82% random)
Thank you again. Makes sense that the second one has more zeros—because the original range is 0..48. I did compensate for that in my manual sequence by negating every second and I was very careless (a.k.a. noise) with how I put groups of bits together. I think I could arrive at a more random sequence but it would take much longer to generate.
My scoring system would have assigned this string a 68% chance of being truly random, scoring it above 73% of the other strings.
Thank you Measure. I think that is an OK result for zero preparation but I expected it to do better given that is it based on a small linear congruential generator + noise.
How would this pure sequence score?
100001010101110100011111001111001100111000111011010110111110001000011111100110100111011111011111010111000110111010110110111101101100101111101110011101
It was generated like this:
var a = “”; var n = 12;
for(i = 0; i < 38; i++) { n = (n*8+1)%49; a = a + (n%32).toString(2); }
console.log(a);
That one scores as only 58% random.
One of the main parts of my scoring system is a program that compares the relative frequency of various substrings of equal length, such as “0000” vs. “0101″. It calculates a score for each string using this method and then looks at what fraction of a large population of truly random strings have a lower score than the sample string. Your first string scored better than 40% of random strings on this metric, and your second string was better than only 1.4% (mostly because it has so many more ones than zeros − 57:93).
Keep in mind that these scores are assuming an equal mix of truly random and user-submitted strings, and the actual guesses depend on how good the other submissions are. If everyone submitted very strongly random strings, all my guesses would be around 50%. (My highest guess on any string was 82% random)
Thank you again. Makes sense that the second one has more zeros—because the original range is 0..48. I did compensate for that in my manual sequence by negating every second and I was very careless (a.k.a. noise) with how I put groups of bits together. I think I could arrive at a more random sequence but it would take much longer to generate.