Exactly What Is RNG?
RNG stands for “Random Number Generator”. It's what determines the game result in devices like slot machines. Roulette simulator games that show a computer animation use RNG to determine winning numbers.
The Two Types of RNGs
True Random Number Generators (TRNGs)
True Random Number Generators use a variety of natural sources to determine random numbers. For example, you could set up 100 microphones all around the world in noisy areas, and the combined sound output could be used to “randomize” numbers. The random sounds are translated into numbers.
This is basically how true random number generators work. There is no “computer algorithm” that makes calculations. The numbers are a truly jumbled mess. This is what makes them so difficult to predict.
If you watched an un-tuned TV, you would see the “white noise” like below:
Whenever True Random numbers are generated, hardware is used to receive things like radiation from space. So it's much like my example of 100 microphones.
Assuming radiation from space was used, the unpredictability of the random numbers depends on the radiation at the time, and the quality of the hardware used. An example of such “consumer” hardware is below:
Even with radiation used as the source, it doesn't mean an abnormally large wave of radiation would make the random numbers more predictable. If the device was designed and constructed properly, you wouldn't notice any difference.
Pseudo Random Number Generators (PRNGs)
Pseudo basically means “fake”. Pseudo Random Number Generators (PRNGs) are a computer program that attempts to randomize numbers so they are unpredictable. But because they are based on a set of rules, they are still predictable in some ways.
Instead of using “random radiation”, PRNGs use the internal clock of computers, in combination with an algorithm.
For example, a computer may be measuring milliseconds. One second = 1,000 Milliseconds (MS). The computer's clock may reset to 0 every day. At +1MS for the day, the random number may be 34. At +2MS for the day, the random number generator may be 18, and so on.
There are countless PRNG algorithms. The above is just a simplistic example. If such a simplistic algorithm was used, and if you could get a random number precisely at the same time on the PRNG computer, you would get the same number. So it isn't truly “random”.
But even if a casino used an algorithm like this, you'd still have the below problems:
- You don't know when the computer's clock starts or ends.
- You can't possibly click with 1ms accuracy.
Real casinos use much more sophisticated PRNGs, so you'll have even bigger problems. Essentially the best PRNGs behave as if the algorithm changes for every game outcome. This makes the results between TRNGs and PRNGs almost indistinguishable. Some online casinos use TRNG, but even they aren't perfect, and are subject to manufacturing defects.
Can Either TRNG or PRNG Be Predicted?
Yes, they can. But it's no simple task. The questions you'll need to ask yourself are explained below:
Is it predictable enough to overcome the house edge?
Because nothing is completely unpredictable, you can sometimes predict even TRNG with an advantage of around 0.05%. But in European Roulette, the house edge is -2.7%. So you can perhaps reduce the house edge to -2.65%. The casino still has the edge.
How is predicting TRNG possible? That depends on the specific hardware. I have one TRNG that uses sound as input, and found certain sound frequencies makes the output numbers more predictable. This is a design flaw. It could be improved further by using algorithms in conjunction with the random number output. Keep in mind every TRNG is different. Even if it uses exactly the same design, it's sensors will slightly differ because of imperfections.
Is it practical to assess?
The higher quality the RNG, the more spins you'll need to find its weaknesses. For a high quality online casino PRNG, you may need 100,000-500,000 game results for proper analysis. Plus you'll need to know some point of reference, such as the time at which the game result occurred. Without a proper point of reference, you can't correlate game results.
There's no way an online casino server will send you 100,000+ game results, without you risking real money. Even if it did, it would take a very long time. However, weaker PRNGs will require much fewer spins to find weaknesses.
So How Can It Be Done?
There are a few ways – some of which are explained below.
Get Insider-Information From Manufacturers
Regulated casinos are audited, and must follow strict guidelines to ensure fair random games. With a bit of digging, you may be able to determine which company supplies the random number generator software or hardware to the casino you're interested in.
No manufacturer will release their algorithms. It would be like Microsoft releasing their source code for Windows. So at best, you may be able to contact the manufacturer, and pose as someone who's interested in running an online casino – or looking to use their RNG for other scientific purposes. Then you can purchase the same RNG equipment used by your target casino. This will allow you to conduct all the testing you need.
Purchasing the actual equipment is how a group of Russian hackers exploited the RNG in slot machines (PRNG). This is the only way they could conduct sufficient testing, without spending a fortune and taking a very long time.
The PRNGs in the affected slot machines have since been changed. But it doesn't mean it can't be done again. Although now the manufacturer will be more careful about who they let obtain their technology, right? Actually it's not too difficult if you know the right people. In the case of Australia, there are slot machines in almost every pub. And there are a lot of pubs in Australia. So you'd only need to know a pub owner, or be one yourself. At least that's one option.
Target The Likely Weaker Equipment
The Russian hackers targeted machines from a major slot machine manufacturer. But even big companies are powered by a few guys behind a computer. And they aren't perfect. Neither is any RNG.
But it makes sense to target machines or online casinos that are new, and not using more established technology. Just be aware that often smaller casinos tend to be more likely to refuse payouts. So if if you use your time and resources to beat them, it could all be for nothing.
Why One System Can't Beat All RNG
Anyone that says their system beats all RNG doesn't understand what they're saying. A system that beats all RNG would need to be a “one size fits all” solution to exploit every different RNG type and algorithm.
Saying a system beats all RNG is like saying you have a shoe that fits everyone and everything – whether they're an infant, adult, bigfoot, goat or elephant.
I say it all the time: the only way to beat roulette is by increasing the accuracy of predictions. That's because the payouts of 35-1 are below the odds of 1 in 37. So even when you win, the payouts aren't fair. The only way to overcome this is “win more often” – which is another way of saying “increase the accuracy of predictions”.
I also often say “It doesn't matter what patterns you think you see in past spins, it's all in your head”. And this is generally true, because the player is looking at patterns like 10 reds in a row, then expecting red to spin next. There are countless sequences of spins that look like patterns, but are just normal random behavior.
There are some exceptions, like when there's a real physical cause for a pattern. With real roulette wheels, it is the physics of the wheel and ball. With RNGs, it's the hardware or the algorithms used.
So if you're going to consistently win at computer animation roulette (RNG), you need to properly attack the mechanism that produces winning numbers.
Example of Bad and Predictable RNG
Microsoft Excel has a notoriously predictable random number generator. Never test a roulette system with Excel. Make sure you're RNG source is reputable, or you'll give yourself the false idea your system works (that's why particular online roulette simulators have so many millionaires).
Microsoft Excel is predictable because when you generate lots of random numbers at the same time, the internal clock of your PC (in combination with the PRNG algorithm) gives a lot of repeat numbers. The numbers may mostly seem random, but sometimes you'll get an unusual run like below:
The key is you don't always get these strange sequences. They only happen at particular times. For example, an anomaly in the math of the PRNG may mean that lots of 3's, 6's or 9's in the computer's internal time make recent RNG numbers more likely to repeat.
Again remember that every RNG is different. So how can you determine if results are predictable or not? There are a few ways, and here's one:
Software can be created to generate “white noise” to visually inspect random results. See the below comparison between a high quality PRNG and low quality PRNG:
High Quality PRNG
Take a good look at the above image. It's a visual representation of what you play against with RNG roulette. It's a random mess. Ask yourself this:
- Does it look like a sequence of reds or blacks will change your odds of winning? Or are the odds of the next spin likely unchanged by previous results?
- Will increasing your bets after losses help, if each spin is completely independent?
I'll spell it out for you: random means unpredictable. If you can't change your odds of winning to be better than “random”, you're going to eventually lose. Changing the size of your bet wont help – it will only vary the rate at which you lose. So if you want to win roulette, focus on increasing the accuracy of your predictions.
Low Quality PRNG
Here's the image from a low quality PRNG:
You can clearly see the strange waves and lines through the low-quality PRNG results. You wouldn't notice it unless you tested millions of spins.
How To Exploit Low Quality PRNG
Firstly, such low-quality PRNG are very hard to find in modern casinos. This is because PRNG manufacturers are now doing a better job, and more thoroughly testing their technology.
However, still no PRNG is completely unpredictable. Anything that is based on rules is predictable to some degree. If you're going to exploit the more sophisticated PRNGs, you are going to need:
- Testing methods that are better than the manufacturers use.
- Lots and lots of data, which isn't easy to obtain (as explained above).
But let's say you wanted to assume the PRNG in any game is flawed. How do you exploit it in the quickest and easiest way possible?
The image above for the “low quality PRNG” has the obvious waves and lines. In a real play situation, these translate to repeating number sequences but ONLY when specific conditions are met.
Put another way, you need to correlate variables to the game outcomes. But you need to go a few steps further, and model the ever-changing relationships.
This doesn't exactly mean “repeaters”, as in the “law of a third” and never having 37 different numbers in 37 spins. That approach simply doesn't work unless the RNG is so heavily flawed that the casino would have lost billions to players.
I'm talking about large sequences of numbers, involving thousands of game outcomes. Unfortunately, every PRNG is different, so there's no single sequence you must to look for. Furthermore, a sequence is not necessarily specific numbers like 4,15,32. It could mean numbers divisible by 3 or any other number, OR fractions, OR even equations. The possibilities are as endless as numbers themselves.
How I Searched For Patterns
Again you need to correlate the variables to the game outcomes. This is because everything, even TRNG, is “cause and effect”. Nothing ever happens without a cause. It's more a matter of whether or not it can be sufficiently predicted, and in a practical way.
After all you can see patterns in PRNG (see the “white noise” image). But you can't easily detect these patterns because you can't easily obtain hundreds of thousands of game results, without risking real money.
To solve this, I developed a variety of software. Essentially it correlates game outcomes to whatever variables I set. The variables could be anything the input data supported. In the case of TRNG numbers from hardware not in my possession, there was no data except numbers. So my only possible reference information would be previous numbers.
Often I would set the software to use random variables then test. This way I could leave the software searching for days and even weeks.
What I found was:
- High quality TRNGs did not show any predictable results.
- Low quality TRNGs (such as the one with audio input) did have weaknesses. For example, when the sound input included specific sound frequencies.
- PRNGs were usually predictable to some degree. Low quality PRNGs were easily predictable.
- High quality PRNGs were pretty much indistinguishable from high quality TRNGs. The only way I could notice a difference was with very high volume testing. Even then the differences were not significant enough to exploit.
- Data from real wheel spins were much easier to exploit. It was like a poorly designed PRNG. Anyone who says RNG is no different to a real wheel simply hasn't done proper testing.
Further Study of Real Wheel Spins
Clearly real wheel spins were more predictable than almost all RNG.
Even with the speed of the rotor and ball being completely “randomized”, there were still statistical anomalies. And I'm not referring to bias. Most “experts” would find this claim dubious, but it's true.
But the problems were:
- Real spins are very infrequent. Getting hundreds of thousands of spins is impractical.
- Having too little data meant analysis wouldn't be reliable.
- A real roulette wheel is like an ever-changing PRNG algorithm. This is because variables that determine winning numbers constantly change.
- It's unrealistic to play for hundreds of thousands of spins on real wheels.
I concluded our entire universe is like one gigantic PRNG. But it is so incredibly complex that a TRNG is almost impossible to predict. TRNG spins are based on countless variables. The outcome of real roulette spins are also based on many variables, but far fewer “significant” variables.
So I needed to find an approach that would:
- Detect and exploit statistical anomalies in a reasonably short amount of time.
- Adapt to the changing conditions.
I managed to do this, but it nowhere near applies everything it could. Because if it did, it wouldn't be practical to use in real casinos anyway. So instead I developed a watered-down version of it, which is being used by real players. I don't use it myself though as I prefer my roulette computers.
Basically the system uses the same technology to find and exploit statistical anomalies in RNG. Without revealing full details, I can describe it's function as below:
It correlates the variables to spin results to find statistical anomalies that can be exploited in a practical way. Because the data is relative short-term, all data is cross-referenced to improve reliability.
It is not a new science. It's essentially analysis to find statistical anomalies in the shortest time possible, and make it more reliable by cross-checking facts.
It's not the only way to beat roulette though. There are other methods like visual ballistics, which will often get a higher edge in theory. But the problem with visual ballistics is it's much harder to avoid detection because you bet after ball release, and casino staff more easily notice you. So to avoid detection, you must take steps that reduce your house edge, and increase the amount of time it takes to play. Because my system enables you to bet before ball release, it's much more covert and overall a better system. It's not perfect and still has limitations, but it works in a reasonable variety of conditions. Generally I do not recommend it to most players because it requires more time and patience than most players are prepared for.
Can You Beat Every Wheel?
Beating wheels is easy. In my experience, every wheel is beatable one way or another – at home. But beating a wheel in real casino conditions is very different.
I've never found a system that will beat all wheels in real casino conditions. I don't think such a system exists because the casino is a very controlled environment, which restricts what's practical or realistic.
Nothing is ever completely unpredictable. In the case of roulette or any casino game, it's more about whether or not:
- You can improve your chance of winning by enough to overcome the unfair payouts (the “house edge”), and
- Your approach is practical for real casino conditions.
In the case of RNG, both TRNG and PRNG can be predictable to some degree. But you realistically need a lot of data, which is the impractical part.
You can beat poor quality PRNG. But there are so many different PRNGs, so no single or mechanical system is likely to ever beat all RNGs. Saying things like “random beats random” or “random is predictable” is “eggheaded” at best.
If you want to look further into exploiting RNG, you can start with free source code available from https://webhome.phy.duke.edu/~rgb/General/dieharder.php
I suggest also translating random results into visual images like the ones I've shown. This makes it much easier to detect possible patterns. On one hand, computer analysis can give you a probability that a pattern is legitimate, and not just in your head. On the other hand, seeing it for yourself is much easier – you are a supercomputer and you didn't even know it. But you can't rely entirely on what you see. That's because we're pattern-seeking beings and tend to think we see patterns where none really exist. This is especially the case with short-term data, like the recent spins on the marquee at the roulette table.
#Beat #RNG #Roulette #Slot #Machines #Casino #Games