Algoritmi: trova il miglior tavolo da giocare (problema del gambler in piedi)

10

Prefazione

Questo non è il golf del codice. Sto guardando un problema interessante e spero di sollecitare commenti e suggerimenti dai miei colleghi. Questa domanda non riguarda il conteggio delle carte (esclusivamente), piuttosto si tratta di determinare la migliore tabella da utilizzare in base all'osservazione. Assumiamo se riuscirai a realizzare una sorta di impianto cerebrale che rende la complessità del tempo / spazio peggiore (su qualsiasi architettura) portatile per la mente umana. Sì, questo è piuttosto soggettivo. Assumi un mazzo francese senza utilizzare i caratteri jolly.

Sfondo

Recentemente ho visitato un casinò e ho visto più passanti di giocatori per tavolo, e mi sono chiesto quale processo di selezione abbia trasformato i passanti in giocatori di scommesse, dato che molti spettatori avevano fondi da giocare (chips in mano).

Scenario

Entra in un casinò. Vedi n tabelle che riproducono una variante di Blackjack , con y di loro che giocano Pontoon . Ogni tavolo gioca con una quantità indeterminata di mazzi di carte, nel tentativo di offuscare il vantaggio della casa .

Ogni tavolo ha una scommessa minima variabile. Hai una valuta Z sulla tua persona. Vuoi trovare la tabella dove:

  • La quantità minima di mazzi di carte è in uso
  • La puntata minima è più alta di una tabella usando più mazzi, ma tu vuoi massimizzare la quantità di giochi che puoi giocare con Z.
  • Le perdite nette per giocatore sono più basse (mi rendo conto che questo è, nella maggior parte delle risposte, considerato come rumore accidentale, ma potrebbe illustrare un shuffler rotto)

problema

Puoi magicamente osservare ogni tavolo. Hai a disposizione X round per basare la tua decisione. A tal fine, ogni giocatore non impiega più di 30 secondi per giocare.

Quali algoritmi useresti per risolvere questo problema e qual è la loro peggiore complessità? Ti:

  • Gioca a Pontoon o Blackjack?
  • Quale tabella selezioni?
  • Quanti round devi osservare (qual è il valore di X), dato che il casinò non può utilizzare più di 8 mazzi di carte per entrambi i giochi? Ogni tavolo ha tra 2 e 6 giocatori.
  • Per quanto tempo sei rimasto indietro mentre cercavi un tavolo?

Lo chiamo " problema giocatore in piedi " per mancanza di un termine migliore. Non esitare a perfezionarlo.

Ulteriori

Dove sarebbe utile se non in un casinò?

finale

Non sto cercando un proiettile magico da gioco. Ho appena notato un problema che è diventato un osso che il mio cervello semplicemente non smetterà di masticare. Sono particolarmente interessato alle applicazioni oltre la possibilità di visitare un casinò.

    
posta Tim Post 30.11.2010 - 18:41
fonte

1 risposta

2

Se riesco ad esaminare contemporaneamente tutti i tavoli anche durante il gioco, allora:
Dato che tutti i giochi progrediscono alla stessa velocità per semplicità ... (potrei aggiustare per questo)


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

ci sono ancora alcuni bug e non conta per TUTTO, ma ottieni dove vado

c'è molto di più in% possibilità di vincere

il numero di giocatori dovrebbe essere minimamente pertinente (più giocatori == più veloce che brucia attraverso i mazzi)

meno giocatori significano che posso giocare più mani contemporaneamente? (che richiederebbe un peso maggiore sul conteggio dei giocatori)

Inoltre, la soglia di conteggio potrebbe essere definita con un misuratore dell'appetito di rischio.

    
risposta data 30.11.2010 - 23:32
fonte

Leggi altre domande sui tag