Non mi dilungherò in questa parte anche perché è quasi tutto spiegato nel codice e sarebbe inutile spiegare passo-passo come sono arrivato a scriverlo.
Per prima cosa, ho scelto il software. Per il problema di soddisfacimento ho usato GLPK, un risolutore lineare che supporta una sintassi molto flessibile e soprattutto è free. Con questo risultato. L'output non è molto leggibile ma la risoluzione è corretta.
Successivamente ho tradotto tutto in uno script Python che simula una partita di Machiavelli, il computer contro sé stesso, con risultati come questo, di cui pubblico un estratto.
Nota: non avendo molta dimestichezza col Python, il codice potrebbe non essere molto "elegante", diciamo.
(...)
Contenuto del tabellone
A♥ A♠ A♣
Q♥ Q♦ Q♠
6♠ 7♠ 8♠ 9♠ 10♠
A♣ 2♣ J♣ Q♣ K♣
Turno del giocatore 1
Carte del giocatore 1:
4♦ 4♦ 4♠ 7♥ 8♣ 8♦ 6♦ 10♥ K♦ 8♣ 3♥ 3♣ 2♥
Il giocatore 1 cala le carte: 3♣
Contenuto del tabellone
A♥ A♠ A♣
Q♥ Q♦ Q♠
6♠ 7♠ 8♠ 9♠ 10♠
A♣ 2♣ 3♣ J♣ Q♣ K♣
Turno del giocatore 2
Carte del giocatore 2:
4♥ 5♣ 5♦ 9♦ K♥ 7♥ Q♦ 4♠ 6♣ 2♠ 2♦ J♦ 10♥ K♠ 10♠ J♥
Il giocatore 2 cala le carte: J♦ J♥
Contenuto del tabellone
J♥ J♦ J♣
Q♥ Q♦ Q♠ Q♣
A♥ A♠ A♣
6♠ 7♠ 8♠ 9♠ 10♠
A♣ 2♣ 3♣ K♣
Turno del giocatore 0
Carte del giocatore 0:
3♦ 9♥ 8♥ J♥ 6♠ 8♥ 2♠ 5♥ 8♦ 10♦ 7♦ K♦ 5♥
Il giocatore 0 pesca una carta dal mazzo: 4♣
Turno del giocatore 1
Carte del giocatore 1:
4♦ 4♦ 4♠ 7♥ 8♣ 8♦ 6♦ 10♥ K♦ 8♣ 3♥ 2♥
Il giocatore 1 pesca una carta dal mazzo: 2♥
Turno del giocatore 2
Carte del giocatore 2:
4♥ 5♣ 5♦ 9♦ K♥ 7♥ Q♦ 4♠ 6♣ 2♠ 2♦ 10♥ K♠ 10♠
Il giocatore 2 cala le carte: K♥ K♠
Contenuto del tabellone
A♥ A♠ A♣
Q♥ Q♦ Q♠ Q♣
J♥ J♦ J♣
K♥ K♠ K♣
6♠ 7♠ 8♠ 9♠ 10♠
A♣ 2♣ 3♣
(...)
Nessun commento:
Posta un commento
Aggiungi un commento