Valutazione della forza dei motori


Questa pagina ha una gerarchia - Pagina madre:Programmazione

Home Forum Programmazione Valutazione della forza dei motori

Questo argomento contiene 28 risposte, ha 3 partecipanti, ed è stato aggiornato da mauro.riccardi mauro.riccardi 5 anni, 6 mesi fa.

Stai vedendo 14 articoli - dal 16 a 29 (di 29 totali)
  • Autore
    Articoli
  • #2276

    La vedo problematica per almeno due motivi.
    Il primo: se viene gestito dalla GUI, il motore deve implementare correttamente i comandi per “forzare” le mosse, senza avere problemi; se il programmatore non ha implementato edit o setboard (che, ripeto, sono cose molto semplici, non solo in se, ma anche nell’architettura di un motore, imho) potrebbe non avere implementato almeno del tutto il resto dei comandi. Dico “potrebbe”, eh…
    Se invece che dalla GUI il book deve essere gestito dal motore, allora l’autore deve creare il book nel suo formato a partire dal book nel “formato di condivisione”…insomma, fai prima a implementare setboard 🙂

    Il secondo: introduce comunque una casualita’ che e’ fonte di rumore. I match Nunn hanno di bello che dovendo tu giocare tutte le posizioni con entrambi i colori, rappresentano una “variabilita’ fissa”, diciamo; sei sicuro che vengono ugualmente rappresentate tutte le posizioni che hai scelto, e che i motori giocano con entrambi i colori le stesse posizioni, cosa che non hai col book.

    E cmq fare un book fatto per bene e’ un lavoro grosso quando lo devi fare per un motore, figuriamoci se lo devi fare per tutti i motori 🙂

    bye^2, mr

    #2277
    Lissandrello Luca
    Lissandrello Luca
    Moderatore

    Ok, ma si sta scegliendo il male minore.

    Premettendo che i nunn match sono anche per me la soluzione migliore non praticabile, vengo al dunque:

    Tiro cifre a caso, ma solo x fare un esempio: Prochess vale 2200 elo così com’è, senza libro e senz’altro. Se ci metto il libro varrà pure qualcosa in più, metti anche 2250 (i rumors stanno già in quei 50 elo). Quindi la domanda è la seguente: accettiamo la variabilità cercando di equilibrare il confronto in apertura o no?

    Il punto è che se implementiamo a tutti lo stesso libro vengono penalizzati quelli che ce l’hanno già (internal o external), se lo togliamo a tutti non posso fare più di 2 partite x singolo confronto (e scatterebbe pure il discorso del book interno ai motori), ma se lo implementiamo solo a quelli che non ce l’hanno secondo me faremmo la cosa migliore (male minore).

    Potrebbe essere interessante creare books specifici x ogni singolo motore estraendo dalle stesse partite giocate dal motore stesso senza supporto di alcun libro.

    Appena riesco tiro fuori i casi critici (engine che non conoscono il setboard o che s’incriccano sul book); questo ci aiuterà a prendere la decisione più giusta.

    Chiaro che quanto sopra è SIMMP 🙂
    Bye!
    LL

    LL

    #2278

    Ma non ho capito perche’ non e’ praticabile.
    Dei motori che ho usato solo uno non aveva edit o setboard (credo fosse tscp), gli altri potevano giocare match da posizione fissata. Insomma, non lo vedo cosi’ impraticabile.
    Devo anche dire che sarebbe una richiesta del protocollo implementare edit (protover 1) o setboard (protover 2) 😉

    A parte questo, mi interessa capire che intendi sul creare book specifici per i motori: che idea hai?
    Come sai, sto cercando da molto tempo di trovare una soluzione quanto piu’ automatica possibile al problema.

    Riguardo alla variabilita’, mi riferivo al fatto che la scelta della linea del book e’ fatta con una certa dose di casualita’, per cui ti servono piu’ partite per avere un “controllo statistico” adeguato sulla misura che vai a fare sul motore.
    E’ chiaro che se stiamo parlando di 100 Elo di differenza, il rumore non impensierisce.
    Ma se vuoi vedere il tuo motore come reagisce a un dato tipo di apertura, non puoi affidarti alla scelta di un libro, imho.

    bye^2, mr

    PS SIMMP?

    #2279

    ciao,
    io faccio regolarmente test da 100 partite sulle 50 posizioni della silversuite. con cadenza di 1’+1″ ci vogliono circa 6h30′ per completare il test. se ripetiamo il test contro 4-5 motori di forza di gioco diversa (da 1800 a 3000 elo) dovremmo avere una stima sensata della forza di gioco. ovviamente no libro e no ponder per ridurre il rumore.
    circa la faccenda dell’edit/setboard: non sapevo ci fossero motori winboard che non la implementano,
    il protocollo uci è basato su di essa (ad ogni mossa la gui manda la nuova posizione al motore).
    ultimamente ho scovato una suite di posizioni di finale, potremmo creare una rating list basata sulla forza di gioco nel finale. pazza idea?
    &d0

    #2280

    Bella quella dei finali, avevo una mezza idea di fare un po’ di test solo finali, ma all’endgame rating non ci avevo pensato. Complementa bene l’Elo “Mossa per mossa” che proponeva Luca.

    Riguardo allo spread di forza dei motori contro i quali testare, secondo me dovrebbe essere un po’ meno ampio.
    Se testi contro Houdini e contro Nero, avrai dei risultati sbilanciati nei due versi, che ai fini statistici non rendono la stima di un valore intermedio piu’ accurata; bisognerebbe fare un pool piu’ omogeneo come forza di gioco, per ogni motore, imho.

    bye^2, mr

    #2281
    Lissandrello Luca
    Lissandrello Luca
    Moderatore

    Ho utilizzato una mia vecchia raccolta di programmi italiani, cercando di aggiornarla quanto possibile. Gedeone,uragano,vaiolet,brama e chaturanga non sembrano rispondere correttamente al setboard di arena.
    Ne ho ancora 22 da testare e è probabile che ne salti fuori qualche altro.
    Chiaro che prendo solo uci e winboard.

    Appena riesco continuo, ma già potremmo farci dei ragionamenti:
    Se vogliamo fare dei gauntlet con posizioni scelte da un file fen si potrebbe
    1 – invitare i programmatori ancora attivi a scrivere il codice per il riconoscimento del fen, mentre x quelli… in pensione… magari ce li segnamo e poi vediamo.
    2 – Per il pool di motori da usare io proporrei di prendere un motore a ogni step di 100 elo, di conseguenza se partiamo da 1500 ne avremo 16 (fino a 3000).

    Dovremmo chiaramente selezionare motori stabili e con il riconoscimento del setboard tra gli ‘stranieri’. Che dite?

    Bye!
    LL

    LL

    #2282

    Su Chaturanga ti devo contraddire: e’ uno degli avversari contro cui testo, e le posizioni iniziali le prende senza problemi. Uragano non credo che sia winboard, visto che ha l’interfaccia proprietaria, quindi temo che il problema sia a monte.
    Gli altri li conosco solo di nome, effettivamente, quindi non saprei.

    Rispondendo alle tue domande:

    1) Non e’ necessario che implementino setboard, basta implementare edit: tra l’altro e’ una cosa molto utile in fase di test, non riesco proprio a pensare al perche’ uno non dovrebbe implementare uno dei due…

    2) Puo’ anche andare bene all’inizio per “prendere le misure” dei motori avere una differenza di 100 Elo tra l’uno e l’altro; ma una volta che e’ chiaro in quale fascia si situa ogni motore, e’ imho uno spreco di tempo farlo giocare troppo fuori della sua fascia; ad esempio, una volta nei miei test rientravano anche nero, tscp, e faile.
    Adesso non avrebbe senso, perche’ non mi darebbe nessuna informazione; d’altro canto il motore piu’ forte contro il quale testo e’ piu’ o meno Leila, visto che non avrebbe senso dare Chexa in pasto a uno Stoccafisso 🙂

    Quindi propongo un approccio in piu’ fasi: prima facciamo un pool anche abbastanza eterogeneo, con un numero ridotto di partite, per risparmiare tempo, e fissare una valutazione “di massima”. Poi conviene “affinare” la grana, e scegliere un pool di motori piu’ omogeneo, per avere una valutazione piu’ accurata.

    Per valutare i motori italiani e privi della possibilita’ di giocare a partire da una posizione data, dovremo ripiegare su tornei standard, o magari su tornei con “libro comune” come proponevi tu, con una variante.

    La variante che propongo richiede un minimo di fortuna: se il motore (che NON ha ne’ edit ne’ setboard) implementa correttamente il force-mode, allora potremmo forzare nel motore la sequenza delle mosse, come per le partite aggiornate su FICS. Per cui ad ogni posizione (per es.) della suite di Silver, associamo la sequenza delle mosse dalla quale proviene, e poi incrociamo le dita 🙂

    Un’ultima possibilita’ prima di switchare in modalita’ “torneo standard e chi s’e’ visto s’e’ visto” sarebbe quella di farsi dare da ogni autore una serie di comandi per il suo engine, con i quali impostare la posizione (o forzare una sequenza di apertura), sperando che abbiano implementato almeno qualche comando custom (magari da usare per fare qualche test). Winboard (vado a memoria) ammette la possibilita’ di inviare una serie di comandi di inizializzazione al motore, pescandoli da un file.

    Che ne dite?

    bye^2, mr

    #2283

    ottima idea!
    ecco alcuni suggerimenti per i motori avversari:
    tscp 1.81 1807 – 1742
    faile 1.4 2075 – //
    beowulf 2.4 2296 – 2020
    sos 5.1 2677 – 2391
    fruit 2.1 // – 2507
    l’elo viene dalla ccrl 40/4 e dalla cegt 40/4.
    ci manca un motore intermedio tra beowulf e sos, un motore più scarso di tscp, e uno fortissimo sui 2800.
    &d0

    #2284

    Nero dovrebbe essere meno forte di tscp.
    Per quanto riguarda quello fortissimo si puo’ prendere un qualche versione piu’ datata di glaurung, o crafty…tanto oltre un certo limite non credo che abbia importanza quale motore precisamente andiamo a pescare…

    Adesso che scorrevo la lista ccrl 40/4, ci sarebbe pure Delfi 5.4 intorno ai 2800: e’ il “nostro” Delfi, vero?

    bye^2, mr

    #2285

    c’è glaurung 2.2 2774 cegt 40/4
    oppure spike 1.2 turin tanto per fare i campanilisti 😀
    delfi 5.4 è il capolavoro di cavicchio ma non possiamo usarlo, gli sparring partner devono essere stranieri!

    #2286

    Ah, capisco. Cioe’, non capisco, ma non ho difficolta’ ad adeguarmi 😉
    Tanto adesso ho altri problemi (magari adesso me ne lamento sul forum…).

    bye^2, mr

    #2288

    Secondo me i seguenti motori sono stabili (elo CCRL 40/4):
    MSCP 1.44 1715
    Tscp 1.81 1807
    Predateur 2.1 1906
    Faile 1.4.4 2075
    Monarch 1.7 2154
    Beowulf 2.4 2296
    Sjeng 12.13 2481
    SOS 5.1 2677
    Fruit 2.2.1 2851
    Glaurung 2.2 3011
    Spike 1.4 3143
    per ora sto testando faile e monarch contro prochess per vedere come vanno.
    &d0

    #2289
    Lissandrello Luca
    Lissandrello Luca
    Moderatore

    Allora… mi sono reso conto di essere un po’ ‘indietro’, per cui parto subito con le risposte/opinioni.

    – SIMMP è la versione italiana di IMHO ossia Secondo Il Mio Modesto Parere 🙂
    – Quando parlo di setboard intendo la possibilità di comprensione di una posizione da parte di un motore uci o winboard, abbiate pazienza, purtroppo scrivendo sempre di corsa sono costretto a comprimere. Probabilmente questa compressione non è stata testata bene 😉
    – l’impraticabilità dei nunn match la vedevo molto legata appunto all’impossibilità, per alcuni motori italiani, di accettare una posizione scacchistica che non sia quella dì inizio partita.
    – Chaturanga mi ha dato 2 errori su sue test effettuati, ma se dici che a te funziona proverò nuovamente a verificarlo e vedere i risultati. Che ti devo dire… spero di sbagliarmi 🙂
    – Uragano, pur avendo un’interfaccia propria continuerei a ritenerlo un winboard engine, non foss’altro per la compatibilità sui comandi di base, altrimenti dovrei escludere pure Raffaela?
    – Per creazione di book specifici intendo lanciare un motore senza book per un set di partite e memorizzando tutto. Terminata questa sessione verrà creato il book direttamente dalle sue stesse partite giocate. Attenzione che questo non significa che quel book agevola il modo di giocare dell’engine in questione! Potrebbe servire solo per creare book a engine che non ce l’hanno colmando il gap temporale verso quelli che ce l’hanno. Comunque quella era un’ipotesi buttata un po’ lì per provare a standardizzare un modo per equilibrare detti confronti evitando i rumors.

    Due parole… se vogliamo usare un pool di motori, potrebbe essere utile trovarne anche uno a 1500 e uno a 1600, se proprio non si trova nulla a 1400. Questi potrebbero essere molto utili sia per i motori deboli che per quelli appena fatti che chiaramente non possono essere fortissimi.

    Credo di non essermi dimenticato nulla 🙂
    Bye!
    LL

    LL

    #2290

    Riguardo a Chaturanga mi sembra strano che ti dia errore: hai testato con winboard o con arena?
    Riguardo a Uragano effettivamente mi sono reso conto che ha almeno una base di comandi implementata.
    Riguardo al book specifico per ogni motore, se le posizioni le estrai da partite dello stesso motore non so se ci guadagna qualcosa, se non riusciamo a far accettare posizioni iniziali ad alcuni motori italiani, e questi non hanno nemmeno il libro, non so come possiamo metterli in pari, purtroppo…
    Riguardo ai motori sotto 1700, ce ne sono in giro diversi, a quanto pare.

    bye^2, mr

Stai vedendo 14 articoli - dal 16 a 29 (di 29 totali)

Devi essere loggato per rispondere a questa discussione.

© 2017 G 6 Tutti i diritti riservati - Buon divertimento!

By continuing to use the site, you agree to the use of cookies. more information

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi