AlanMendelson
AlanMendelson
  • Threads: 167
  • Posts: 5937
Joined: Oct 5, 2011
February 18th, 2012 at 4:17:02 PM permalink
Is there an actual public document on the Internet that can be seen that will answer a few questions about RNGs and multi game machines:

Question: How many RNGs are on a video poker terminal and does the number of RNGs vary with the number of games on that terminal?

It has been my understanding that there is one RNG and the numbers selected by that RNG are then applied to the various game programs. So if the RNG draws 2222A it will have one payoff for Jacks, one for Bonus, one for DDB, one for DW, etc.

The belief that there is a different RNG for each game, I was told, is wrong.

Can anyone point to something that will answer this question definitively?

Thanks.
98Clubs
98Clubs
  • Threads: 52
  • Posts: 1728
Joined: Jun 3, 2010
February 24th, 2012 at 5:27:05 PM permalink
Interesting, no one can say for sure, and there's a few people in the gaming industry here.
Some people need to reimagine their thinking.
AlanMendelson
AlanMendelson
  • Threads: 167
  • Posts: 5937
Joined: Oct 5, 2011
February 26th, 2012 at 6:08:29 PM permalink
A lot of people have read this thread... and no one comments with some info??
weaselman
weaselman
  • Threads: 20
  • Posts: 2349
Joined: Jul 11, 2010
February 26th, 2012 at 6:12:42 PM permalink
It does not matter. A single RNG can easily be seen as a combination of several different RNGs, and vise versa, several RNGs are completely equivalent to a single generator. These are all irrelevant implementation details.
Is there a public document describing where exactly the silicone came from that went into every chip of such-and-such machine?
"When two people always agree one of them is unnecessary"
PopCan
PopCan
  • Threads: 1
  • Posts: 178
Joined: Feb 15, 2012
February 26th, 2012 at 10:24:29 PM permalink
Quote: AlanMendelson

Is there an actual public document on the Internet that can be seen that will answer a few questions about RNGs and multi game machines:

Question: How many RNGs are on a video poker terminal and does the number of RNGs vary with the number of games on that terminal?

It has been my understanding that there is one RNG and the numbers selected by that RNG are then applied to the various game programs. So if the RNG draws 2222A it will have one payoff for Jacks, one for Bonus, one for DDB, one for DW, etc.

The belief that there is a different RNG for each game, I was told, is wrong.

Can anyone point to something that will answer this question definitively?

Thanks.



This is a tricky one to answer. First, an RNG won't "draw" a hand. The only job an RNG has is to provide a random number when given some arbitrary seed. In the case of video poker the software "asks" the RNG for many numbers and uses those numbers to randomize/shuffle a deck of cards. Once the deck has been randomized the RNG's job for that game has finished. The software then deals the cards from the deck sequentially.

Outside of Class II machines, most jurisdictions require that any game that resembles a traditional casino must have the same chances for each outcome as the game it is imitating. A video craps game, for example, would need to ensure that all possible 36 combinations of dice tosses have an equal chance of occurring. For video poker this means the cards must be drawn from a single deck of randomized cards, discards can't be reinserted into the deck, and the machine can't influence the outcome of the game in a non-random way.

To answer your question, since it's the software on the EPROM that controls the game behavior and not the RNG: No, there's no need for more than one RNG in a given machine regardless of the number of games.

There's not much in the way of documentation out there as the exact functions of the RNGs themselves are usually proprietary but you can read GLI's standards to get a better idea of how the machines are designed. GLI is an independent, private company that tests and certifies gaming devices. Their testing standards aren't necessarily law but are designed so that any device (slot machine, video poker machine, etc) that they approve will adhere to the requirements of almost any jurisdiction. Their Gaming Devices in Casinos v2.0 covers RNG requirements in section 4.3.

Here's a somewhat simplified example of how a video poker machine might shuffle a deck of cards using an RNG:
Put the cards in order, 1 - 52.
Do the following for each position in the deck, from 1 to 52. We'll say the card in the current position is [CARD]:
1. Ask the RNG for a random number
2. Scale that random number so it's between 1 and 52. We'll call that number [RANDOM]
3. Exchange [CARD] with the card in position [RANDOM]
4. Move to the next position and repeat
MathExtremist
MathExtremist
  • Threads: 88
  • Posts: 6526
Joined: Aug 31, 2010
February 26th, 2012 at 10:42:50 PM permalink
To the OP, the RNG is separate from the game programming -- it's a resource that game code can use to do its job (like spinning reels or shuffling cards). That's why game manufacturers can get RNG code approved once and then not have to touch it again even while they build dozens of different games on top of that RNG. There's no good reason to use different RNGs for different games, but there are lots of reasons not to use them. It's far more expensive, for starters.

Also:
Quote: PopCan

Here's a somewhat simplified example of how a video poker machine might shuffle a deck of cards using an RNG:
Put the cards in order, 1 - 52.
Do the following for each position in the deck, from 1 to 52. We'll say the card in the current position is [CARD]:
1. Ask the RNG for a random number
2. Scale that random number so it's between 1 and 52. We'll call that number [RANDOM]
3. Exchange [CARD] with the card in position [RANDOM]
4. Move to the next position and repeat


This is a common algorithm but it's slightly incorrect and leads to a bias. What you need to do is this:

Put the cards in order, 1 - 52.
Do the following for each position P in the deck, from 1 to 52. We'll say the card in the current position P is [CARD]:
1. Ask the RNG for a random number
2. Scale that random number so it's between P and 52. We'll call that number [RANDOM]
3. Exchange [CARD] with the card in position [RANDOM]
4. Move P to the next position and repeat

By swapping between P and 52 each time, instead of 1-52 each time, the probability of each permutation is equal.
"In my own case, when it seemed to me after a long illness that death was close at hand, I found no little solace in playing constantly at dice." -- Girolamo Cardano, 1563
PopCan
PopCan
  • Threads: 1
  • Posts: 178
Joined: Feb 15, 2012
February 26th, 2012 at 11:02:00 PM permalink
Damnit, brain fart. Yes, that's the swap-in-place algorithm I was talking about. I forgot to go from P to 52 instead of 1 to 52. Nice catch.
thecesspit
thecesspit
  • Threads: 53
  • Posts: 5936
Joined: Apr 19, 2010
February 26th, 2012 at 11:20:03 PM permalink
Sometimes people program P+1 due an off-by-one-error, and also introduce bias (as you end up with cycles, which mean you don't have a random list). I highly doubt there's a commercial Fisher-Yates algorithm that contains that error though.
"Then you can admire the real gambler, who has neither eaten, slept, thought nor lived, he has so smarted under the scourge of his martingale, so suffered on the rack of his desire for a coup at trente-et-quarante" - Honore de Balzac, 1829
FleaStiff
FleaStiff
  • Threads: 265
  • Posts: 14484
Joined: Oct 19, 2009
February 27th, 2012 at 1:37:29 AM permalink
I'll leave this P and NP stuff to the programmers what understand it, but the main thing to be gained from all this is that while there may always be disputes about "random" and "proof of randomness" in effect an RNG is random enough for alot of money to be bet on it. Those who want to "test" an RNG will probably be wasting their time but at least its not like testing an electric chair.
weaselman
weaselman
  • Threads: 20
  • Posts: 2349
Joined: Jul 11, 2010
February 27th, 2012 at 6:44:04 AM permalink
never mind ...
"When two people always agree one of them is unnecessary"
  • Jump to: