Sabrina steps


Questa pagina ha una gerarchia - Pagina madre:Programmazione

Home Forum Programmazione Sabrina steps

Questo argomento contiene 28 risposte, ha 2 partecipanti, ed è stato aggiornato da stegemma stegemma 3 giorni, 1 ora fa.

Stai vedendo 15 articoli - dal 1 a 15 (di 29 totali)
  • Autore
    Articoli
  • #11136
    stegemma
    stegemma
    Moderatore

    “Satana” ha cambiato nome ed ora si chiama “Sabrina”. di fatto ho anche cambiato l’implementazione di AlfaGemma, passandola ad una versione “simil-assembly”, sempre in C++ ma usando ampiamente dei “goto” invece dei cicli for/while. Lo so che è una cosa stilisticamente orribile… ma così mi trovo più a mio agio e capisco meglio il mio stesso programma.

    Ho anche rivisto pesantemente le TT ed ho ancora molto da fare, da questo punto di vista.

    Non ho idea di come giochi Sabrina 3.0.21 ma non è importante, al momento, proprio perché prevedo parecchie pesanti migliorie, in futuro.

    #11139
    stegemma
    stegemma
    Moderatore

    Sabrina torna a giocare decentemente… con qualche piccola “licenza poetica”:

    [fen]8/P7/8/8/4k3/2K5/8/8 w – -[/fen]

    qui gioca Pa7-a8=R!

    #11140
    stegemma
    stegemma
    Moderatore

    Un altro passo avanti:

    
    -----------------LarsenVB-----------------
    LarsenVB - Sabrina          : 3,0/5 2-1-2 (0=11=)  60%   +70
    -----------------Neurone_XXIII-----------------
    Neurone_XXIII - Sabrina     : 1,5/5 1-3-1 (0=010)  30%  -147
    -----------------Piranha-----------------
    Piranha - Sabrina           : 4,5/5 4-0-1 (111=1)  90%  +382
    -----------------Sabrina-----------------
    Sabrina - LarsenVB          : 2,0/5 1-2-2 (1=00=)  40%   -70
    Sabrina - Neurone_XXIII     : 3,5/5 3-1-1 (1=101)  70%  +147
    Sabrina - Piranha           : 0,5/5 0-4-1 (000=0)  10%  -382
    Sabrina - Satana.2.4.20.w64 : 4,0/5 4-1-0 (11110)  80%  +241
    -----------------Satana.2.4.20.w64-----------------
    Satana.2.4.20.w64 - Sabrina : 1,0/5 1-4-0 (00001)  20%  -241
    
    #11141
    stegemma
    stegemma
    Moderatore

    La prima partita che ho giocato contro Sabrina. Ho perso per una svista madornale ma Sabrina ha giocato sostanzialmente bene:

    #11183
    stegemma
    stegemma
    Moderatore

    Non è direttamente correlato a Sabrina ma anche questo è interessante: con l’esperienza nell’uso del profiler nata per velocizzare i miei programmi di scacchi, sono riuscito a quasi raddoppiare la velocità del mio nuovo DB custom!

    Non è tutto tempo perso, il nostro…

    #11217
    stegemma
    stegemma
    Moderatore

    Si torna all’assembly! Ho già realizzato il generatore mosse (ormai li scrivo ad occhi chiusi) e conto di portare il motore in assembly di Sabrina all’IGT. Stavolta ho scelto il percorso più semplice, senza ottimizzare al massimo all’inizio. Il generatore mosse così è molto semplice e lineare.

    Prossimo passo: copiare l’AlfaGemma dalla versione C++ e vedere cosa succede.

    #11221
    stegemma
    stegemma
    Moderatore

    Senza neanche sforzarmi troppo nelle ottimizzazioni, ecco un primo risultato dell’engine in assembly:

    
    setboard k7/8/8/8/8/8/8/7K w
    perft 12
    
    Sabrina C++: Nodes: 928817526, Time: 21021 ms, Nodes/s: 44183118
    
    Sabrina assembly: Nodes: 975468096, Time: 8167 ms, Nodes/s 119425574
    

    Il perft è ancora un po’ bacato ma esamina un maggior numero di nodi al triplo della velocità!

    (NB: l’esperienza insegna che le prestazioni del perft dicono poco)

    #11261
    stegemma
    stegemma
    Moderatore

    L’ultima novità, come scrivevo nella chat, è stata l’implementazione di un’interfaccia WEB per Sabrina. Al momento, permette di giocare, senza alcuna opzione, usando semplicemente i caratteri UniCode per la visualizzazione. Il bello dell’interfaccia è che si basa su Web Sockets, per cui il traffico di rete dovrebbe essere veramente minimo e non serve il “polling” continuo. Il tutto ovviamente con un singolo exe, che fa anche da web-server (no Apache!).

    Sono soddisfatto, perché gestire tutto in modo asincrono è stato una vera sfida di programmazione!

    PS: e che fig@ta! posso giocare più partite contemporaneamente, aprendo più finestre nel browser!!!

    #11265
    stegemma
    stegemma
    Moderatore

    Incredibile partita Sabrina-Piranha, con un fiale giocato benissimo da Sabrina… fino ad un’assurda promozione a Torre! Il risultato poi è tutto da ridere:

    #11268
    stegemma
    stegemma
    Moderatore

    Domani porterò questa versione:

    
       Engine        Score  Sa
    1: Sabrina Work  3,0/8  ·· 
    2: Piranha       1,5/2  =1 
    2: Pentagon_12   1,5/2  1= 
    4: Neurone_XXIII 1,0/2  01 
    4: LarsenVB      1,0/2  == 
    
    #11402
    stegemma
    stegemma
    Moderatore

    Ho rilasciato Sabrina 3.1.24, con implementato il “re-deepening”:

    Sabrina 3.1.24 con re-deepening

    #11405
    stegemma
    stegemma
    Moderatore

    Ultimo torneo, da 5m + 200ms

    
       Engine         Score         Sa
    1: Sabrina 3.1.24 38,0/56 ········· 
    2: LarsenVB       5,0/8   0=11==1=  
    3: Sabrina 3.0.23 3,0/8   =1000===
    3: Piranha        3,0/8   01100001  
    3: Pentagon_12    3,0/8   ===0=0==  
    3: Neurone_XXVI   3,0/8   00=01=01  
    7: Giraffe        1,0/8   00000010  
    8: DarkHorse      0,0/8   00000000  
    
    #11677
    stegemma
    stegemma
    Moderatore

    Togli le TT… metti le TT… alla fine sembra che stia peggiorando di versione in versione:

    
       Engine            Score                              Sa
    1: Sabrina Work      39,5/90 ······························ 
    2: Satana.2.4.20.w64 18,0/30 0110==000=0=11111==111=101==1= 
    3: Sabrina 3.0.23    17,0/30 ====11====01=1=01011=0=1=0=1== 
    4: Sabrina 3.1.24    15,5/30 ===0=======0=====1==110==1====
    

    Tra l’altro, non sembra funzionare la ricerca della patta (o l’evitarla) durante la ricerca.

    Ci devo lavorare ancora…

    #11678
    stegemma
    stegemma
    Moderatore

    Contro gli altri del suo livello, siamo sempre lì:

    
       Engine       Score     Sa
    1: Sabrina Work 19,0/25 ····· 
    2: LarsenVB     3,0/5   0=1=1 
    3: Pentagon_12  2,0/5   00=1= 
    4: DarkHorse    0,5/5   00=00 
    4: Piranha      0,5/5   000=0 
    6: Neurone_XXVI 0,0/5   00000
    

    Molte partite le ha vinte per il tempo ma sembra che l’attivazione delle TT non abbia dato grandi risultati.

    #11684
    stegemma
    stegemma
    Moderatore

    Con la TT attiva, ho sistemato i flag per la ripetizione ed ora riesce a dare matto in questa posizione:

    [fen]8/8/8/4kr2/8/4K3/4Q3/8 w[/fen]

    Non ho le TB e trova il matto solo con le euristiche di RD vs R solo.

    Ed ora vediamo se funziona RCA vs R

Stai vedendo 15 articoli - dal 1 a 15 (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