RPP algorithm from someone who knows what he's talking about

[quote=“SunPowerGuru, post:19, topic:6651”]
Except this NEVER happens in real life.
[/quote]SPG,
My dad introduced me to computers on a Apple IIe, all that loaded was was it need’d to talk to the floppy drive… or howabout most Ti calculators, that can run mini programs, and use a RND function… So yess, it does happen in real life…[quote=“spivak, post:17, topic:6651”]
Just don’t use the same seed each time and the problem is solved.
[/quote]Exactly Spivac, you build in a “seed” that is input by a human… and you go from there…

As SPG has shown, in the quote from Gatsby, is in my opinion and a few teachers I had opinions to be a pretty shabby “shuffle”… not only does this describe a 1 shuffle senario, but then each time it is pulling from a “clean” deck… Since a computer can complete this task in surely under 1 second, why not repeat this process between 5-9 times, randomly varry’n it between the 5-9 times, I think the table can survive an xtra second between hands…

That approach lends itself to patterns all by itself, especially since you are starting with a clean deck each time. No matter how you shuffle, 1 sure fire way to dismiss “rigg’d claims” is to create a simple slider… allow the person to the right of the dealer to “cut” the cards using the slider each hand… who cares if this adds 3-5 seconds to each hand…

If you go to a bar, or any casino with a human dealer/shuffler, there’s no freak’n way that dealer is only gonna shuffle the cards once between hands, and prolly every once around the table they do a “wash” on the table… why would Replay only want 1 “shuffle”, makes no sence to me from a programming standpoint.

I was just taught differently by my dad, and then my teachers… over time you get randomness of randomness, rather than randomness from order… if your starting point is continually variable, then the outcome from even just picking numbers from that pool, becomes more random…

I agree with Spivak that it would be terribly hard to have a switch that just hurts 1 player, or criteria that would tell the code to start making player XXXXX lose… Spivak is also right, by saying # of hands per hour makes a huge difference ( as well as look’n @ your cards while play continues )… One of the next biggest factors, is crappy play resulting in too many suckouts… this is directly tied to free chip poker… and the strategies that have been born from that environment…

So I don’t see any algorithm necessary… in real estate its always Location, Location, Location… well in almost everything else its Implementation, Implementation, Implementation… you can have the best idea, with crappy implementation just turn out… well crappy…

01000011 01100001 01101110 00100000 01111001 01101111 01110101 00100000 01110011 01100101 01100101 00100000 01110100 01101000 01101001 01110011 00100000 01110000 01100001 01110100 01110100 01100101 01110010 01101110 00111111

Just curious lol

2 Likes

A standard technique for setting the seed is to use the clock: No need for human interaction: If your algorithm starts working at 12:37:21 on the 11th of June of 2018, use seed 20180611123721. Of course you can also just use (previous seed)+1 as well since there is no relation between the random numbers the MT generates with consecutive seeds, but the system time is more standard.

Again, adding shuffles is only needed if you don’t trust your randomizer. There is no reason not to trust MT.

Also, just keep in mind the way RNGs worked on your Apple IIe in the 80s is not the way they work now. All of my argument is predicated on the assumption that RPP was written less than 15 years ago. If it is older than that then there would be good reason to do something fancier: My thesis advisor has mentioned it is hard to trust any monte carlo inference from the 90s because of poor RNG.

Huh?

1 Like

Theres a message in there for you :wink:

01101000 01100001 01101000 01100001 01101000 01100001 00100000 01111001 01101111 01110101 00100000 01100001 01110010 01100101 00100000 01110100 01101111 01101111 00100000 01110011 01100101 01110010 01101001 01101111 01110101 01110011 00100000 01101001 01110100 00100000 01101101 01100001 01101011 01100101 01110011 00100000 01101101 01100101 00100000 01101100 01100001 01110101 01100111 01101000 00101100 00100000 01100001 01101110 01100100 00100000 01001001 00100000 01100001 01110000 01101111 01101100 01101111 01100111 01101001 01111010 01100101 00101110

You can use a binary to text converter :wink:

hahaha you are too serious it makes me laugh, and I apologize.

1 Like

AND THEY SAY MY BOY RALPHIE IS NUTS!!!
GUYS ITS FREE POKER–
RELAX
AND GOOD LUCK W UR NUTS!!1

TOM
RALPHIES SECRETARY

1 Like

He’s probably just passionate about it and trying to contribute, which is cool.
The first one was: Can you see this pattern?

1 Like

lol the NUTS is the best hand!

I think you guys have way too much time on your hands.

Thinking about statistics is literally my job. Also, I assume you probably spend a fair amount of time watching TV or playing computer games or whatnot as well. It’s not about how much free time you have so much as what you do with it. I use my free time to geek out.

1 Like

i’m nuts, so that means i’m the best person in the world, always knew it. :stuck_out_tongue:

1 Like

Spivak,
Also there was a time when computer cycles were paid for like data on todays cellphones… or minutes back when there was less than 56k cons…
When you look at how Replay picks cards, its very inneficient… whereas my way, I’m done with 3-4 shuffles to thier 1… why not have it shuffle my way 4-7 times, especially if its “more random”.

My dad liked to go over my assignments, and commented on how certain techniques end up in “bloated” code… He said, I guess its ok due to newer memory limits and such, but cleaner code runs faster and is easier for the next guy to go thru when its not your job anymore…
Also 1 of my teachers graded this way… if it did everything perfectly, but was minimal… you got a B… but if it did everything, and it looked kick butt… you got an A… I always got an A…

I will say this Spivak, knowing exactly how Replay pulls cards to make a shuffle, explains alot to me… on why I see patterns in deals…I know its not fix’d, but it seems less random that it could be… It has been that way on all poker sites, Replay seems the least wierd …

Since you know statistics so well, you can prolly explain why in large data sets, odds just seem to evaporate for periods of time, or why that can’t happen… By that I mean, going say 200 hands without a playable/premium hand… or say on 9 ppl table, general odds are anyone wins 1 in 9… sure sometimes its 1 in 15-18 , but not 1 in 50… Since we almost never see winning streaks like 10 in a row, why could we normally see 25-30 loosers in a row… Just ask’n the “expert” … ??

1 Like

When they “…create a new deck of cards ordered lowest to highest,” they aren’t shuffling at all. They are simply creating a lookup table, which is the same as a brand new, unshuffled deck.

“A card is then randomly selected from that deck.” This is the shuffle. It doesn’t matter if you shuffle an actual deck 200 times, then deal the top card, or if you randomly pull a card from an unshuffled deck… both will give you a random card. Choosing a random card each time is the same as shuffling each time, as long as you are truly generating random numbers, there’s no difference at all.

I said, “Beat the random number with a big math stick until it corresponds to a specific card,” and that’s exactly the process they are describing here. Generate a random number, do something to it mathematically until it’s in the range of 1-52, then look it up and see what card it corresponds to. Although Gatz didn’t mention it, of course they have a way to make sure they don’t select the same exact card more than once per hand.

The only difference between the way I suggested they do it and the way they actually do it is that i said “send the card to the table” and they actually build a “shuffled deck” array first.

When I said. “Except this NEVER happens in real life.” I was talking in the context of present day in general, and specifically about the way Replay does it. The fact that you had a non-networked Apple IIe back when you were a kid has nothing to do with it. I bought my first computer in 1979 (TRS-80), and it wasn’t as good as my current system… so what?

Not too big of a math stick: Just multiply by the number of remaining cards and take the ceiling.

The procedure randomizes the entire deck rather than just the cards you are actually going to use. This means they generate 51 random numbers each time.

As for SS last question: If you have a geometric random variable the variance will be (1-p)/p^2. Note the squaring of p in the denominator. If you take an event and count the number of trials before it occurs, the variance increases significantly as the likelihood of the event goes down. This means that for unlikely events (such as being dealt a premium hand) the amount of time you have to wait between each occurence will vary wildly, and may sometimes be much much larger than the mean.

Exactly. It’s not the same as shuffling once, then taking the cards one at a time from the newly ordered deck. Taking a randomized card from the remaining deck is, to me, about the same as reshuffling before you draw each card.

Great answer!

[quote=“SunPowerGuru, post:35, topic:6651”]
Choosing a random card each time is the same as shuffling each time, as long as you are truly generating random numbers, there’s no difference at all.
[/quote]SPG,
I said more than a few times… a “clean” deck… meaning a brand new deck…
I also said “shuffle” its not, but thats what replay calls it… and yes, its once.
No difference ? sure there is, just the dead pile that reincorporates back in each time
thats a huge difference… just 1 of the normal reason you don’t see the same hand in
2 consecutive hands…

The standard way they do it, is pull a RND# 1-52, check to see if its there or blank… if its there, add it to the new deck and blank out the posistion they just checked… by the time you are trying to pick from #27 and #49, it might take you 50 attempts to get 1 of those 2 numbers… let alone the last one, but if you run a counter and then hit 51 cards, then you just run the array for the last “unblanked” spot…

Another way to do that is to decrease the deck each time by 1 card as you pull cards so you never try to pull “blank” cards, but then you have to sort out the blank spot 1st each time, which is more effort… so maybe same amount of processing time…

Now in a casino, or a bar, or a home game… each hand, you never break out a new deck, and even then… you dont do a standard table wash ONLY, then deal… remember I said each hand, a new deck… never happens… Even when a new deck is brought out, 1st they wash it, then they shuffle it a few times before its cut, then dealt out…

Yes SPG, I know its not a shuffle ( but its thier version ), I know they do it once, I know they start from a clean deck EACH HAND, and I know its totally unnatural…


My way there’s a dead pile, as cards are folded a new deck is created… the middle cards are the last to be add’d to that deck, before the deck itself is add’d on top of that… from there, you shuffle normally 4-7 times, and never get a “perfect” shuffle… there’s a variance on splitt’n the deck in two of a couple cards, and it never perfectly alternates cards as it shuffles… this most replicates those casino tables with the built in auto shufflers, where they run 2 decks @ all times, so there’s always a shuffled deck waiting…

From a buisness standpoint, I can see the advertizing potential to say… look, we do it as close as possible to a real live table, and have that certified RND

I like’d Spivack’s geek out, wanted to add to it…

hmmm, oooook…lol