Porting per MorphOS del programma scacchistico Stockfish
  • Just looking around
    Posts: 12 from 2020/8/2
    Buongiorno a tutti!!

    Scrivo per chiedere aiuto nello sviluppo di un moderno programma di scacchi per MorphOS. Per il sistema operativo OS4 ho realizzato Amifish, che è una GUI per Stockfish, un programma di scacchi che funziona a riga di comando secondo uno protocollo denominato UCI (Universal Chess Interface). Tempo fa, ho rilasciato anche la versione MorphOS di Amifish, ma non esistendo Stockfish per MorphOS ho dovuto utilizzare un altro motore esistente, Predateur.

    Stockfish è un programma molto forte, completamente gratuito ed opensource. E' scritto in C++. Ne esistono inoltre numerosi derivati.

    Il mio obbiettivo è quello di dare alla comunità Amiga un programma di scacchi moderno, per diverse piattaforme (OS4, AROS, MorphOS), completamente gratuito.

    Ho cercato più volte di compilare Stockfish sulle diverse piattaforme Amiga, ma non ci sono mai riuscito. Chiedo se qualche persona è in grado di farlo, e in tal caso di contattarmi, in quanto posseggo una versione di Stockfish secondo me ottimale ai fini del dare un programma completo alla community, perché può gestire sia i libri di aperture, che le tabelle Syzygy dei finali. Sarebbe pertanto ottimo, secondo me, il porting di questa versione anzichè quella reperibile sul sito ufficiale di Stockfish, la quale ha il vantaggio di dare l'algoritmo più forte, ma non dà il supporto ai libri di apertura, cosa che non potrei implementare facilmente nella GUI. Se può aiutare, Stockfish è già stato portato per OS4 ed AROS, il makefile di queste versioni può essere un aiuto per realizzarne altre.

    Qualche link sull'argomento:

    STOCKFISH
    https://stockfishchess.org/

    AMIFISH PER MORPHOS:
    https://www.morphos-storage.net/?id=1532021

    STOCKFISH PER OS4:
    https://aminet.net/package/game/board/stockfish-5-amigaos4

    STOCKFISH PER AROS:
    http://archives.aros-exec.org/index.php?function=showfile&file=game/misc/stockfish5_aros-i386.zip

    Grazie in anticipo a chi mi aiuterà
    Domenico
  • »02.08.20 - 09:04
    Profile
  • Just looking around
    Posts: 12 from 2020/8/2
    Proseguendo nel discorso, Ho trovato questa versione di Stockfish molto interessante per essere portata su Amiga, CFish, che è un porting di Stockfish dal linguaggio C++ al linguaggio C:

    CFish su GitHub

    Mi sembra ottimale per molti motivi:

    - Può sfruttare direttamente i libri delle aperture in formato bin per un'ottima conduzione dell'apertura
    - Può sfruttare le tabelle Syzygy dei finali (per chi è curioso: https://syzygy-tables.info ), per un gioco perfetto nella fase finale della partita
    - Possibilità di lanciare più threads sfruttando al massimo una CPU multicore eventualmente presente
    - Grazie alle opzioni NNUE (Efficiently Updatable Neural Network), può valutare le mosse da giocare anche con reti neurali (caratteristica introdotta recentemente nei programmi di scacchi) e migliorando il proprio gioco partita dopo partita, grazie alla registrazione su file del proprio apprendimento.

    Con l'ultima caratteristica elencata, si avrebbe sull'Amiga un modernissimo programma di scacchi che non avrebbe nulla da invidiare agli altri!

    La versione di Stockfish ufficiale, invece, non ha il supporto ai libri di apertura che viene invece demandato all'interfaccia che lo ospita ed è per questo che consiglio il porting di CFish (il quale, invece, li supporta) anzichè Stockfish.
  • »04.04.21 - 14:15
    Profile
  • Moderator
    guruman
    Posts: 461 from 2003/7/21
    Non posso aiutarti, tra le altre cose per un'atavica mancanza di tempo, ma vedo dal thread in Inglese che qualcuno ci ha messo mano. Invece, da ultimo moderatore attivo della sezione Italiana, ne approfitto di qualche minuto di tempo per darti il benvenuto da queste parti!

    Saluti,
    Andrea
  • »16.04.21 - 21:08
    Profile
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    Flash
    Posts: 105 from 2019/11/1
    Io ho aggiornato la versione presente su os4depot di gnuchess ma non l’ho mai distribuita perché non testata a dovere.
    Purtroppo non è l’ultimo motore disponibile perché il codice è cambiato totalmente e ci vorrebbe un porting ex novo.

    Interessante questa possibilità di CFish, meriterebbe di essere approfondita.
    Che bello parlare italiano una volta tanto.. un abbraccio!
  • »17.04.21 - 08:00
    Profile Visit Website
  • Just looking around
    Posts: 12 from 2020/8/2
    Un saluto caloroso a voi che mi avete risposto :-)

    Ci sto lavorando da un bel pò su questa cosa, e voglio approdare ad un risultato più che valido. Avrei fatto io la compilazione di Cfish, ma non ci sono mai riuscito. Bisogna avere un motore completo, che oltre che essere forte possa fare uso di libri di apertura e tabelle dei finali, dopo di che la cosa che rimane da fare (e che intendo fare, e sto già facendo!) è sviluppare un'interfaccia all'altezza del motore. Fatta quella, si dispone di un programma di scacchi valido e completo. Aperto anche a motori prodotti da chiunque, grazie allo standard UCI che è universale, e anche miglioramenti sull'ipotetico CFish o Stockfish esistente (p.es. ottimizzazioni per Altivec o Xena). Adesso secondo me non è importante avere l'ultimo grido in fatto di algoritmo, è importante secondo me avere un programma completo. Per fare un motore più forte di quelli esistenti ci sarà sempre tempo.

    Chiunque possa occuparsi della compilazione è benvenuto! E' possibile contattarmi per domande/test ecc. in PM se si vuole.

    Ciao
    Domenico
  • »18.04.21 - 13:09
    Profile