Algoritmo mossa vincente

L'algoritmo della mossa vincente è un'altra strada per imparare al computer a giocare a tris. È una tecnica rudimentale di intelligenza artificiale che consiste nel suddividere il tris in una matrice quadrata a 9 elementi.

la mossa vincente

Al posto dei simboli X e O del tris, l'algoritmo utilizza:

  • il numero 3 per il giocatore A ( simbolo X )
  • il numero 5 per il giocatore B ( simbolo O )
  • il numero 1 per le celle vuote

Nota. L'uso del numero 3 e 5 in sostituzione dei simbolo X e O consente al computer di svolgere dei calcoli matematici che semplificano la ricerca della mossa vincente o bloccante.

Come funziona l'algoritmo

Durante il suo turno di gioco, prima di decidere la sua mossa, il computer (giocatore A) verifica tutte le righe, le colonne e le diagonali moltiplicando tra loro i numeri.

  1. Mossa vincente. Quando il prodotto è pari a 9 ( ossia 3x3x1), individua una "mossa vincente" e il gioco finisce.
  2. Mossa bloccante. Quando il prodotto è pari a 25 (ossia 5x5x1) , individua la mossa per bloccare il giocatore avversario (B).

    Nota. L'algoritmo decide di bloccare l'avversario soltanto in assenza di mosse vincenti, al termine di tutti i controlli. Viceversa, se c'è una mossa vincente, la intraprende subito appena viene trovata.

ALGORITMO MOSSA VINCENTE

E se non trova una mossa vincente o bloccante?

In questo caso l'algoritmo sceglie una casella nelle righe, colonne e diagonali con prodotto uguale a 3.

Nota. Le righe, colonne o diagonali con prodotto pari a 3 ( ossia 3x1x1 ) sono potenzialmente ancora vincenti.

Se non ci sono, allora l'algoritmo seleziona una casella a caso ( scelta random ) tra quelle ancora vuote.

Pro e contro dell'algoritmo

I vantaggi

A differenza di altre tecniche ( es. database mosse ) l'algoritmo della mossa vincente non usa molto spazio in memoria.

Non deve registrare, né analizzare tutte le situazioni di gioco passate.

Gli svantaggi

L'algoritmo della mossa vincente è una tecnica di intelligenza artificiale rudimentale.

I principali handicap della tecnica sono i seguenti:

  • Tempo di elaborazione. Ogni turno l'algoritmo calcola tutte le possibili combinazioni di righe, colonne e diagonali per individuare la mossa vincente o bloccante. Pertanto, richiede parecchio tempo.

    Nota. Tale handicap può comunque essere minimizzato scegliendo una diversa rappresentazione del problema.

  • Dipendente dalla programmazione. L'algoritmo è fortemente dipendente dalla programmazione. Inoltre, il sistema non acquisisce esperienza nel corso del tempo, ma compie semplicemente una ricerca "meccanica" della migliore mossa successiva.
  • Poco generalizzabile. Il metodo è poco flessibile, perché non può essere impiegato per risolvere problemi diversi o simili. Può essere usato soltanto nel caso specifico per cui è progettato.

    Esempio. L'algoritmo funziona per il tris bidimensionale. Tuttavia, non può essere usato per un tris tridimensionale ( a tre dimensioni ) anche se le regole di gioco sono simili.

https://www.okpedia.it/algoritmo_mossa_vincente


Segnala un errore o invia un suggerimento per migliorare la pagina


Intelligenza artificiale


FacebookTwitterLinkedinLinkedin