एल्गोरिदम: खेलने के लिए सबसे अच्छी तालिका ढूंढें (खड़े जुआरी समस्या)


11

प्रस्तावना

यह कोड गोल्फ नहीं है। मैं एक दिलचस्प समस्या को देख रहा हूं और अपने साथियों से टिप्पणियों और सुझावों की अपेक्षा करता हूं। यह प्रश्न कार्ड काउंटिंग (विशेष रूप से) के बारे में नहीं है , बल्कि यह अवलोकन के आधार पर संलग्न करने के लिए सबसे अच्छी तालिका का निर्धारण करने के बारे में है। मान लें कि आप किसी तरह का मस्तिष्क प्रत्यारोपण करेंगे जो मानव मस्तिष्क को सबसे खराब स्थिति समय / अंतरिक्ष जटिलता (किसी भी वास्तुकला पर) को पोर्टेबल बनाता है। हां, यह काफी सब्जेक्टिव है। वाइल्ड कार्ड के उपयोग के बिना एक फ्रांसीसी डेक मान लें ।

पृष्ठभूमि

मैंने हाल ही में एक कैसीनो का दौरा किया और प्रति टेबल खिलाड़ियों की तुलना में अधिक दर्शकों को देखा, और सोचा कि चयन प्रक्रिया ने सट्टेबाजों को खिलाड़ियों में बदल दिया, यह देखते हुए कि अधिकांश दर्शकों के पास खेलने के लिए धन (हाथ में चिप्स) थे।

परिदृश्य

आप एक कैसीनो में प्रवेश करें। आप देखते हैं n तालिकाओं का एक संस्करण खेलने ब्लेक जेक उन्हें खेलने की y के साथ, पोंटून । प्रत्येक तालिका घर के लाभ को बाधित करने के प्रयास में, कार्ड डेक की अनिश्चित राशि के साथ खेलती है ।

प्रत्येक तालिका में एक अलग न्यूनतम शर्त होती है। आपके पास अपने व्यक्ति पर Z मुद्रा है। आप उस तालिका को खोजना चाहते हैं जहाँ:

  • कार्ड डेक का कम से कम उपयोग होता है
  • न्यूनतम दांव अधिक डेक का उपयोग करने वाली तालिका से अधिक है, लेकिन आप उन गेम को अधिकतम करना चाहते हैं जो आप जेड के साथ खेल सकते हैं।
  • Net losses, per player are lowest (I realize that this is, in most answers, considered to be incidental noise, but it could illustrate a broken shuffler)

Problem

You can magically observe every table. You have X rounds to sample, in order to base your decision. For this purpose, every player takes no more than 30 seconds to play.

What algorithm(s) would you use to solve this problem, and what is their worst case complexity? Do you:

  • Play Pontoon or Blackjack ?
  • What table do you select ?
  • How many rounds do you need to observe (what is the value of X), given that the casino can use no more than 8 decks of cards for either game? Each table has between 2 and 6 players.
  • How long did you stand around while finding a table?

I'm calling this the "standing gambler problem" for lack of a better term. Please feel free to refine it.

Additional

Where would this be useful if not in a casino?

Final

I'm not looking for a magic gambling bullet. I just noticed a problem which became a bone that my brain simply won't stop chewing. I'm especially interested in applications way beyond visiting a casino.


Interesting quesiton. I'm not sure this is the right site for this. I don't know why or where it would fit better, it just doesn't feel right here. Perhaps I'm wrong...
Walter

@Walter - I wasn't sure either. There are sites dedicated to various games, but it isn't likely that the users of those sites understand complexity, or even what an algorithm is. It's too 'meta' for SO, I'm wondering if it can find a home here.
Tim Post

I don't know it kinda sounds like a Poisson process. Maybe the people at math.stackexchange.com might know.
Conrad Frix

@Conrad, perhaps. However, I suspect someone here might have some ideas, which ended my debate on asking the question in the first place :)
Tim Post

1
Sorry, but I do not even see a problem statement. I can only assume that the problem is to maximize winnings, then the questions you ask are not important to the algorithm. I don't care how many rounds I observe, I just observe until I have an edge against the house and then I push that edge. If I can always wait until I have an edge and always switch tables to the table with the best edge then the algorithm is very simple.
Jeremy

जवाबों:


2

If I can concurrently examine all tables even while playing then:
Given that all games progress at the same speed for simplicity...(i could adjust for this)


while(not satisfied with winnings)
 keepcurrenttable == 1 || Wait for positive count threshold on any one table  
  if Z/(min bet)>%chance of win*payout  
    next  
  else  
    Play hand according to standard counting rules.  
  endif
if (%chance of win on another table*payout on another table > same for current) && Z/(min bet)>%chance of win*payout
  change tables  
 elseif currenttable %chance of win*payout >
  keepcurrenttable=1
 else
  keepcurrenttable=0
 endif
next

still some bugs in there and doesn't account for EVERYTHING, but you get where I'm going

there's a lot more to %chance of win

number of players should be minimally pertinent(more players == faster burning through decks)

does less players mean I can play more hands concurrently?(that would require heavier weight on player count)

additionally, count threshold could be defined with a risk appetite meter.

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.