Newsgroup: it.hobby.scacchi
Titolo: creiamo il motore "IHS"?

Considerato la crescente potenza dell'hardware, in
special modo le nuove cpu multi-core, la potenza
scacchistica dei programmi sta crescendo in maniera
costante, superando in forza, qualsiasi essere umano.
Tra poco (forse gia' adesso), non avranno piu' senso
i match umani vs. pc (vedi gia' il match Elhvest,Rybka
oppure Frits-Kramnik).
L'unica sfida plausibile sono i campionati tra i motori
scacchistici, con Rybka attualmente l'"uomo" da battere.
La premessa e' finita: vengo al dunque...
Mi piacerebbe realizzare un motore scacchistico: ho
qualche conoscenza di programmazione in C++ e
un po' diconoscenza di scacchi.
Si potrebbe inziare descrivendo le strutture di dati
principali, le idee alla base del progetto: io mi
trovo molto bene con il programma Smart Draw che
permette di disegnare dei Flow Chart.
http://www.smartdraw.com/
c'e' qualcuno che vuole collaborare con me? pensate al
momento in cui la nostra creatora cominciera' ad essere
piu' forte di noi e cominciera' a "bastonarci"... penso sia
una bella soddisfazione!
Se volete rispondermi in pvt, il mio indirizzo e':
paolodebortol/chiocciola/gmail/punto/com.
Certo, potrei anche lavorare da solo, ma se siamo in
diversi, le idee sono + numerose e ci sono stimoli in +
per non arenarsi e continuare. In passato ho gia' scritto un
programma di reversi (othello) ma dopo la prima verione
ho abbandonato il tutto (girava su un 8086 ed era scritto
in QBasic).
Non occorre chissa quale sforzo: basta un idea: una routine
anche scritta con flow chart... soprattutto le idee sono
essenziali... anche link sono ben accetti... ad  es:
http://www.itportal.it/developer/algoritmi/soluzioni_43/pagina3.asp
sperando in un vostro interese, ciao a tutti...
Paolo

 Paolo
Ciao,
anche a me è sempre piaciuta l'idea di creare un motore di scacchi.
Però ad essere sincero mi ha sempre scoraggiato il fatto che è una
cosa che richiede un bel po' di tempo.
Esistono un paio di motori con il codice sorgente disponibile: Gnu
Chess e crafty. Il secondo è abbastanza tosto.
L'algoritmo è "semplice" è una ricerca "in profondità" su grafi and
or, che io sappia è lo stato dell'arte. E' fondamentale implementare
l'alfa-beta pruning per la velocità e altri accorgimenti assortiti per
migliorare prestazioni e attenuare l'effetto orizzonte.
Usare AO* è possibile? Bho...
La struttura dati, dovrebbe essere qualcosa come un vettore e le
bitboard: interi a 64 bit in cui ogni bit rappresenta una casella
della scacchiera.
Scusa la "scortesia", ma per fare un motore di scacchi bisogna saperne
abb di programmazione, è una cosa da migliaia di righe di codice, la
generazione delle mosse è un po' un casino per tenere conto di en
passant e arrocco, bisogna tenere conto delle regole delle 50 mosse e
della posizione ripetuta tre volte... insomma ci sono tante
complicazioni fastidiose.
Quanto sei abile nella programazione? (avevi già un'idea della cose
che ho scritto?)
Il programma sarebbe con licenza open source, o qcosa di
assimilabbile? Spero vivamente di si.
Cmq la cosa figa è che si può avvalersi della consulenza del NG per
questioni tattiche ed euristiche varie per indirzzare un po' il gioco
del motore, cioè fargli indovinare le cose migliori da fare al di là
della profondità di analisi che riesce a raggingere con i calcoli.
PAolo

 Chess e crafty. Il secondo è abbastanza tosto.
Questi sono i piu' famosi per motivi "storici", ma ne esistono tanti
altri: Toga, Glaurung e Scorpio (tutti piu' forti di Crafty), e poi Delfi,
Kiwi e Arasan, solo per citare quelli con un Elo stimato superiore a 2500
punti. Se contiamo anche quelli di forza inferiore, e limitandoci sempre e
solo ai motori di tipo open source, ce n'e' davvero una pletora. 
Ciao, Bruno.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

della profondità di analisi che riesce a raggingere con i calcoli.
se ti va la cosa, mettiamoci in contatto.
La discussione all'ordine del giorno e' la struttura dei dati ed una
analisi della documentazione in nostro possesso.
...Ovviamente senza nessuna fretta: la cosa bella e' che e' un hobby
quindi scegliamo noi quanto tempo dedicarci.
ciao
Paolo

totalCUT
conosci il GSEI?
http://it.groups.yahoo.com/group/g_6/
Ciao, Ciro 

 in poche settimane, secondo le mie stime, lavorandoci sopra
Perdonate l'intrusione e perdonatemi se provo a smontare l'idea, ma se ho la 
possibilità di comprare un'automobile già bell'e confezionata, perché mai 
dovrei partire da zero a crearmi il volano i pistoni, le portiere e poi i 
bulloni ecc. ecc.
Personalmente mi considero un programmatore "casalingo" e ai tempi del C64 
imparai il Basic e creavo i programmi che mi occorrevano. Oggi non c'è più 
gusto perché ci sono un sacco di programmi che fanno quello che vuoi tu e lo 
fanno sicuramente meglio del tuo programma che ti ha fatto sudare sette 
camicie e ti ha fatto fare le nottate. Dal mio punto di vista è uno sprego 
di energia.
Grazie  per avermi dato udienza
NSantini 

 ha scritto nel messaggio news:et9u75$82s$1...@registered.motzarella.org...

certo che e' uno spreco di energia! anche gli scacchi sono uno spreco di
energia (mentale), anche andare in bicicletta (piu' fisica) ecc...
se pero' l'attivita' ti piace e la fai per tuo diletto allora diventa un hobby:
ognuno ha i suoi preferiti: a me piace sia giocare a scacchi sia programmare
e posso prendere due piccioni con una fava scrivendo un mio programma
di scacchi: non sara' certo il programma piu' forte del mondo, chiaramente
non vincero' il Tour de France ma giocare a scacchi contro un programma
che ho fatto io, e' un'esperienza che ti fa apprezzare le sconfitte piu' delle
vittorie. Cosa peraltro piu' unica che rara nel mondo degli scacchi e dello
sport in generale.
ciao

 camicie e ti ha fatto fare le nottate.
A me servirebbe un newsreader con scacchiera incorporata. Quando leggo
un post su IHS
che  include partite/posizioni in pgn, in zgn (zoldan game notation)
fen o descrittive
deve venire aggiornata automaticamente la scacchiera a seconda di dove
e` posizionato il
cursore.
Dato che sicuramente ci sono gia` un sacco di programmi che lo fanno
potresti gentilmente
postarmi tre o quattro link?
TIA
Ciao ;-))
Andrea

 bulloni ecc. ecc.
A me servirebbe un newsreader con scacchiera incorporata. Quando leggo
un post su IHS
che  include partite/posizioni in pgn, in zgn (zoldan game notation)
fen o descrittive
deve venire aggiornata automaticamente la scacchiera a seconda di dove
e` posizionato il
cursore.
Dato che sicuramente ci sono gia` un sacco di programmi che lo fanno
potresti gentilmente
postarmi tre o quattro link?
Non volevo innescare una polemica, diciamo che è stata una provocaziione 
voluta. LO SO che programmare è bello e ti gratifica tantissimo quando il 
tuo programma riesce a fare quello che avevi in mente. Avevo già chiesto 
scusa in anticipo.
Circa il programma che hai descritto, non esiste... ma è come se esistesse 
visto che puoi tenere aperti più programmi saltarellando da una finestra 
all'altra e facendo uso smodato di copia e incolla.
Ho espresso la mia opinione senza - credo - aver offeso nessuno.
Ciao a tutti voi
NSantini

 Ho espresso la mia opinione senza - credo - aver offeso nessuno.
Infatti e` cosi`. A me sembrava di aver fatto lo stesso.
ciao
Andrea

 E poi il copy&paste con le partite del Montaruli non funge, eh, eh :-)
In quel caso ci vorrebbe come minimo uno scanner con braccio
robotizzato che vada a pescare dalle scatole di scarpe dove tiene i
formulari... :-)
Il mondo e' pronto per questo?
Alessandro

 un po' diconoscenza di scacchi.
bellissima idea, se avessi del tempo libero collaborerei!
-- 
ciao
Vittorix 

vindalooMan wrote:

In effetti siamo ai limiti tecnologici, forse anche oltre ma la posta
in gioco e` enorme: dobbiamo tentare! :-)
-- 
Andrea Vinzoni 
andrea.vi...@fastwebnet.it
se vuoi scrivermi leva la menzogna dall'indirizzo