La cosa più semplice da fare è scrivere una funzione che prende lo stato di una scheda e ti restituisce un punteggio per quello stato della scheda. Quindi annoverare su tutte le schede possibili e scegliere il migliore. È davvero al centro di tutto.
Considera il gioco tic-tac-toe per un momento. Consideriamo la persona che segna 1 punto per ogni X di fila, colonna o diagonale e -1 punto punto per ogni O in una riga, colonna o diagonale (e anche le righe o le diagonali con almeno una X e O sono segnate come 0).
X | | || X | | X || X | X | || X | |
---+---+--- || ---+---+--- || ---+---+--- || ---+---+---
| O | || | O | || | O | || | O | X
---+---+--- || ---+---+--- || ---+---+--- || ---+---+---
| | X || | | || | | || | |
Score: 1 || Score: 1 || Score: 1 || Score: 1
Non dirò che questa è la migliore euristica per tic-tac-toe, ma hai l'idea dell'idea di una funzione per valutare lo stato della scheda.
Questo è davvero il cuore del gioco. Qui ci sono due schede - quale è "migliore". Meglio potrebbe essere un "quante mosse da una vittoria potenziale" o "che ha più possibilità di vincita" o un numero qualsiasi di altre funzioni di valutazione della posizione .
In un gioco in cui vi è la possibilità di indovinare al prossimo gioco dell'avversario, inizi a scrivere un albero minimax dove provi a decidere sulla mossa che ti dà ancora la valutazione migliore dopo che il tuo avversario ha creato quello che è il peggiore per te. Questo non è un piccolo argomento, come notato c'è una pagina di wikipedia abbastanza buona su di esso con 13 altre pagine nel vedere e molti link e riferimenti esterni. Questa è una zona abbastanza grande di teoria dei giochi - e se vuoi esplorare che è l'argomento di libri, più lezioni e articoli del college risultanti in qualcosa di troppo grande per rispondere ragionevolmente qui.