You are here: Home › Article Manager

Article Search

Thus played Vitruvius

And you, how would you play?

















A few words from the author

0 Thursday 09 February, 2012 in Various by admin
Il motore ideale dovrebbe avere lo stile dell’indimenticabile Garry Kasparov il quale riusciva, quasi per magia, a trovare degli imprevedibili (ma soprattutto posizionalmente giustificati!) sacrifici (spesso di uno o due pedoni, ma altrettanto spesso sacrificava la qualità). Anche Botvinnik e Petrosjan utilizzavano spesso (e con successo!) i sacrifici di qualità posizionali.

Apparentemente questo può sembrare un problema da niente, si abbassa il valore attribuito a pedoni e torri e subito il programma incomincia a sacrificare pedoni e qualità... Però c’è un problema fondamentale: saranno sempre sacrifici scorretti! Un programma che giochi in questa maniera valuterà in maniera distorta e artificiosa la posizione ed alla fine ci porterà verso posizioni perdute, valutandole per di più come vincenti! Pessima idea.

I sacrifici di Kasparov erano invece corretti o quanto meno giocabili. Questo fatto si evidenzia quando ‘imbecchiamo’ i vari motori che, dopo un’iniziale valutazione negativa, modificano gradatamente il loro giudizio (numerico, naturalmente!) fino a confermare la bontà della mossa eseguita in partita. Il ‘programma ideale’ dovrebbe quindi non solo trovare le mosse di Kasparov, ma anche valutare in maniera corretta ed oggettiva le posizioni risultanti. Molti fattori strategici che caratterizzano il gioco umano (la posizione, il dinamismo dei miei pezzi, la facilità dello sviluppo, la maggior scelta del numero di mosse e piani, il controllo dello spazio, ecc.) sono piuttosto eterei, quasi impalpabili e non è facile ricondurli a valori numerici!

Sembrerebbe dunque difficile mettere a punto un programma che giochi in questa maniera, ma ho accumulato però una buona esperienza in tal senso, quando alcuni anni fa modificai il programma TOGA-II per farlo giocare secondo lo stile di Alekhine, quindi perchè non tentare?

Un grosso lavoro preliminare è stato quello di individuare i fattori posizionali che caratterizzavano lo stile di gioco di Kasparov e - soprattutto - metterli sotto forma di algoritmo. Questo ha richiesto lo studio accurato di decine e decine di partite del grande campione, alla ricerca dei vari ‘fattori comuni’, delle regole che lo spingevano a scegliere certe mosse piuttosto che altre... In pratica ho cercato di mettere a punto un Algoritmo di Kasparov!

Come base di partenza ho preso naturalmente DEEP SAROSto. È un derivato del programma IvanHoe e nelle numerose prove si è dimostrato come uno dei più forti motori attualmente disponibili sul mercato. Inoltre è strutturato secondo le migliori e più moderne tecniche, sia in campo tattico (albero di ricerca) sia in campo strategico (valutazione posizionale).

In seguito ho dovuto lavorare duramente sulle funzioni di valutazione, sul valore di pezzi e pedoni e sulle funzioni di ricerca a bassa profondità (low-depht) nell’albero delle varianti. Quest’ultima funzione è praticamente quella che nei chess engines fornisce le cosiddette mosse candidate e quindi è anch’essa di importanza fondamentale per la definizione dello stile di gioco di un motore.

Infine, sono passato ad una lunga fase di prove sul campo per la verifica del lavoro e per la regolazione ‘di fino’ dei parametri e delle funzioni del programma. Questo ha richiesto molto tempo e molte ricompilazioni del programma, mettendo a dura prova la mia pazienza e la mia caparbietà... Ma alla fine ho finito! Dato lo stile ‘umano’ a cui tende il programma l’ho chiamato Vitruvius.
Last Modified: Friday 17 February, 2012
  • Visits: 62137
  • (Current Rating 4.6/5 Stars) Total Votes: 14
  • 13 2

No Comments Yet...

Leave a reply


Contact Information

  • E-mail:info@vitruviuschess.com
  • Telephone: 0039 06 8813636
  • Fax: 0039 06 8813683
  • Address: Via G. Pacchiarotti 109/111, 00139, Roma, Italia

Without error there can be no brilliancy.

Emanuel Lasker,

The beauty of a move lies not in its appearance but in the thought behind it.

Aaron Nimzowitsch,