|
5. Conclusioni
Nel Capitolo 4 sono stati riportati tutti i test eseguiti per valutare la bontà delle funzioni di valutazione realizzate, sia testandole una contro l'altra e tracciandone il comportamento, sia facendo giocare ogni funzione contro un giocatore umano. Da una prima osservazione si è potuto notare che, quelle che sembravano delle strategie vincenti, come ad esempio le considerazioni utilizzate per creare la funzione Spettacolo, nella pratica si sono verificate molto banali e facilemente battibili. Un motivo del perchè di questa situazione si può ritrovare nella difficoltà di riuscire ad associare i giusti pesi ai parametri delle funzioni di valutazione. Un peso sbagliato rischia o di dar troppo peso ad alcuni parametri penalizzandone altri o viceversa, e si può verificare che il risultato ottenuto non è quello desiderato. Per poter ovviare a questo problema, si dovrebbero riuscire a trovare, per ogni strategia i pesi ottimali, ossia quelli che permettono a tale funzione di ritornare il valore migliore. Questo è possibile riuscendo a valutare il cambiamento del comportamento della funzione di valutazione al variare dei pesi, o applicando delle tecnica di apprendimento con rinforzo. Dalle osservazioni precedenti si può anche dedurre un'altra considerazione: la difficoltà di assegnare i pesi ai vari parametri ed il rischio di annullare gli effetti positivi di alcuni di questi a scapito di altri meno importanti, suggerisce che più parametri si usano, più risulta essere difficile controllare il comportamento della funzione. Questo giustifica come mai la funzione Spettacolo che prende in considerazioni varie strategie si comporti molto male anche contro la più semplice funzione SoloPedine, che considera solo il peso dei pezzi. Inoltre si è potuto notare come la funzione di valutazione, che nelle partite computer contro computer risulta comportarsi meglio, quando viene utilizzata contro un avversario umano sia facilmente battibile. Questo è il caso della funzione Prima. Una spiegazione di tale fattore potrebbe essere data dal fatto che la ricerca minimax, come noto, gioca in modo ottimo solamente quando si suppone che anche l'avversario giochi in modo ottimo. Pertanto si può verificare che, giocando contro un umano che muove a caso le pedine, il computer realizzi delle mosse che non risultano essere le migliori e le più intelligenti. Le funzioni che sono state considerate le più interessanti da giocatori umani sono state Originale e SoloPedine, che sono funzioni che considerano solo il peso dei pezzi ed eventualmente il valore della posizione occupata dalle pedine e/o dame. Del resto queste strategie non sono facilemente prevedibili da un giocatore umano, dato che privilegiano solo la posizione in funzione di parametri non facilemente apprendibili. Questo invece non è vero per funzioni che hanno sfruttano strategie fisse che gli impongono di muoversi contro predefiniti schemi di gioco, come Spettacolo o Prima. Quest'ultima infatti cerca sempre di avere la base ben saldata e sembrerebbe una buona idea, il problema è che con solo poche osservazioni sull'andamento di una partita, si riesce a capire il comportamento della funzione e si riescono a prevedere le mosse prima che vengano eseguite. Questo permette di difendersi e attaccare la strategia di gioco. Un altro fattore di debolezza delle funzioni basate su teoria ben precise come la funzione Prima, è dovuto al fatto che risultano essere molto rigide e continuano ad eseguire la loro tecnica senza riuscire ad opporsi e difendersi dall'avversario. Pertanto quello che, se giocato da un giocatore umano, sembra essere una tecnica infallibile, riprodotto sull'intelligenza artificiale si comporta in modo indesiderato. L'umano in ogni momento riesce a variare le proprire strategie di mosse in base all'avversario, le funzioni costruite non sono in grado. Si può concludere che le funzioni basate su semplici considerazioni e calcoli delle configurazioni della damiera sono preferibili per un giocatore umano rispetto a quelle più sofisticate, ma anche a lungo andare più prevedibili e rigide. Un'ultima considerazione deve essere fatta per quanto riguarda i test eseguiti sul tempo. Il tempo di risposta può essere valutato solo per il giocatore di tipo aritificiale, infatti come spiegato nelle regole del gioco, non si sono imposte dei limiti di tempo massimo entro il quale ritornare la risposta. Pertanto il giocatore umano può impiegare quanto tempo vuole, il problema è per il computer. Anche questo tipo di giocatore potrebbe fornire una risposta in un tempo qualsiasi, ma non volendo annoiare il giocatore umano, si è deciso di valutare tale tempo e cercare di renderlo accettabile. Il tempo richiesto dal computer per ritornare una risposta, è fortemente influenzato e determinato dalla parte di ricerca della soluzione eseguita principalemte da MiniMax con gli altri metodi ausiliari. In particolare, il fattore dominante del tempo richiesto dipende dalla profondità di ricerca che si permette di raggiungere all'interno dell'albero. Le considerazioni per permettere che tale tempo non sia eccessivo sono discusse al Capitolo 2. Il tempo per il calcolo di una funzione di valutazione rispetto ad un'altra non varia in modo evidente, dato che il numero di operazioni eseguite da ogni funzione non varia di molto. Quest'ultima considerazione spiega perchè nei test per la valutazione del tempo, non si sia reso necessario considerare tutte le combinazioni di funzioni, ma far variare solamente la profondità massima permessa.
|