Voglio codificare un gioco da tavolo che si chiama Okey e per lo più popolare in Turchia. http://en.wikipedia.org/wiki/Okey
Ma ho dei problemi con l'IA.
Firslty mi lascia spiegare il gioco ..
Il gioco è giocato da 4 giocatori.
In questo gioco ci sono 106 tessere, 2 delle quali sono jolly falsi. Altre 104 tessere sono divise in 4 colori generalmente verde, nero, blu e rosso. Tutti i colori hanno due set di tessere. Un'isola set contiene 13 tessere numerate in sequenza da 1 a 13.
Ogni giocatore inizia 14 tessere (una è l'inizio 15 e inizia per prima) e lancia una delle tessere più indesiderate al giocatore successivo. Il giocatore successivo può ottenere questa tessera o può ottenere un'altra tessera dallo stack nel mezzo del tavolo. Il gioco si è svolto in senso antiorario ..
Lo scopo di questo gioco è trovare la sequenza valida di 14 tessere il prima possibile. Il giocatore può allineare le tessere con numeri sequenziali nello stesso colore fino a 13. Per esempio Verde 1, Verde 2, Verde 3. Qui c'è un'eccezione, 1 può essere seguito a 13. Ad esempio Rosso 12, Rosso 13 e Rosso 1 è un set valido. Ma Red 13, Red 1 e Red 2 non sono validi.
Oppure il giocatore può allineare le tessere in base ai colori con lo stesso numero. Per esempio Verde 1, Nero 1, Rosso 1, Blu 1.
Ogni set deve essere 3 o più tessere per essere valido e ognuno di questi set è chiamato "Per". Meno di 3 tessere non sono valide per la finitura. Un set di finitura valido può essere così. G: Verde, B: Blu, R: Rosso, BL: Nero G1 | G2 | G3 B2 | R2 | BL2 R9 | R10 | R11 | R12 BL13 | R13 | G13
L'ultima cosa, quando si avvia il gioco, una tessera selezionata per determinare il jolly (okey). Ad esempio se si seleziona Blue 3; Blue 4 sarà jolly (okey) e il giocatore può usare questa tessera invece di qualsiasi tessera di cui il giocatore ha bisogno per vincere o completare un set (per).
Naturalmente queste regole sono regole generali e riassunte per spiegare la domanda. Se riesci a leggere l'inglese puoi consultare questo link per ulteriori informazioni http://tr.wikipedia.org/wiki/Okey o pagina tradotta da Google Translate http://translate.google.com/translate?js=n&prev=_t&hl= it & ie = UTF-8 & layout = 2 & EOTF = 1 & sl = tr & tl = it & u = http: //tr.wikipedia.org/wiki/Okey
Quindi quale algoritmo AI posso usare? Ho cercato la teoria minimax e la potatura alfa beta. Ma queste teorie riguardano generalmente 2 giocatori come scacchi o tic-tac-toe.
La domanda originale è su StackOverflow: /programming/4419628/creating-a-board-game-ai