Newsgroup: it.hobby.scacchi
Titolo: CB8: Funzione di ricerca rapida di una posizione

Una domanda dell'amico Giorgio Ruggeri mi ha spinto a scrivere queste
considerazioni sulla funzione di ricerca rapida in CB8.
Come gli utenti di CB8 sanno, per cercare rapidamente una posizione
basta aprire una partita, fare clic sulla mossa in cui viene raggiunta
la posizione desiderata, fare clic sulla scacchiera con il pulsante destro
del mouse e poi scegliere (dal menu di scelta rapida) la voce:
Ricerca in (nome database).
Occore pero' fare attenzione, perche' possono verificarsi casi come il seguente,
segnalatomi appunto da Giorgio:
[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "Prova1"]
[Black "?"]
[Result "*"]
[ECO "C92"]
[PlyCount "37"]
[EventDate "2001.09.27"]
[SourceDate "2001.09.27"]
1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8. c3
O-O 9. h3 Bb7 10. d4 Re8 11. Nbd2 Bf8 12. a4 h6 13. Bc2 exd4 14. cxd4 Nb4 15.
Bb1 c5 16. d5 Nd7 17. Ra3 f5 18. Nh2 Nf6 19. Rg3 *
[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "Prova2"]
[Black "?"]
[Result "*"]
[ECO "C92"]
[PlyCount "41"]
[EventDate "2001.09.27"]
[SourceDate "2001.09.27"]
1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8. c3
O-O 9. h3 Bb7 10. d4 Re8 11. Ng5 Rf8 12. Nf3 Re8 13. Nbd2 Bf8 14. a4 h6 15. Bc2
exd4 16. cxd4 Nb4 17. Bb1 c5 18. d5 Nd7 19. Ra3 f5 20. Nh2 Nf6 21. Rg3 *
Dunque, sia nel primo esempio di partita che nel secondo si raggiunge la stessa
posizione, solo che in "Prova1" la posizione viene raggiunta dopo 19.Tg3, mentre
in "Prova2" la posizione viene raggiunta dopo 21.Tg3.
Attenzione:
Se apro "Prova1" in CB8, faccio clic sulla 19a mossa del Bianco (19.Tg3) e poi
avvio una ricerca rapida della posizione nel mio database di due partite,
ottengo un risultato sorprendente:
CB8 mi trova "Prova1" ma NON "Prova2", perche'?
Perche' nella sua analisi il programma esamina tutte le partite del database
SOLO FINO ALLA 19a MOSSA e se una partita ha raggiunto la posizione
data entro la 19a mossa, la segnala.
Siccome "Prova2" raggiunge la posizione SOLO ALLA 21a mossa, CB8 
NON LA SEGNALA!
In altri termini: La ricerca rapida considera non la sola posizione, ma DUE
parametri:
1. Posizione
2. Numero di mossa
Facciamo la controprova:
Apriamo "Prova2", posizionamoci sulla 21a mossa (21.Tg3) e avviamo la ricerca
rapida.
Questa volta CB8 trova TUTTE E DUE le partite, perche' analizza il mio database
per cercare la posizione data FINO ALLA 21a MOSSA e quindi, ovviamente,
trova la stessa posizione verificatasi alla 19a mossa!
Naturalmente, se nello stesso database ci fosse stata un'altra partita in cui
veniva raggiunta la stessa posizione, ma alla 22a mossa, CB8 NON L'AVREBBE
TROVATA!
Quindi, se voglio ricercare una posizione IN TUTTE LE MOSSE delle partite del
mio database, devo avvalermi della maschera di ricerca di una posizione oppure
usare un semplice "trucco":
1. Apro una partita in cui si verifica la posizione, in questo caso, ad esempio,
"Prova1".
2. Mi posiziono sulla 19a mossa (19.Tg3), e cioč quella che mi porta alla
posizione desiderata.
3. Vado al menu:
File -> Nuovo -> Posizione
e poi faccio clic su OK!
4. Faccio clic con il pulsante destro e avvio la ricerca rapida e, a questo
punto, CB8 mi trova TUTTE le partite in cui si verifica la posizione,
indipendentemente dal numero di mossa!
Questo, perche' CB8, in questo caso, si č incollato la stringa FEN
della posizione in una scacchiera e quando esegue la ricerca lo fa
IN TUTTE LE MOSSE DELLE PARTITE e non solo fino a una certa mossa.
Per finire "in bellezza" segnalo che Chess Assistant non ha questo problema,
perche' quando si cerca una posizione con il metodo della ricerca rapida
il programma imposta una ricerca esaustiva, NON LEGATA al numero
di mossa!
Saluti
Ivo

 Ricerca in (nome database).
Dunque, io ho CB6, e ho notato le seguenti differenze :
Se inserisci una posizione nuova inserendo mossa per mossa,
lui ti trova tutte le partite che hanno raggiunto quella posizione
alla medesima mossa.
Se invece vuoi cercare una posizione INDIPENDENTEMENTE
dal numero di mossa, allora devi usare la maschera di ricerca
e inserire la posizione manualmente, spostando i pezzi sulla scacchiera.
Ti torna ?
Penso sia comprensibile il primo caso,  in quanto deve risultare possibile
visualizzare le mosse delle partite trovate a partire da UNA "n" esima mossa
e costruire "l'albero" del repertorio da quella mossa.
Ciao
Davide C.


Si', succede lo stesso anche con CB7 e CB8!
(Naturalmente, per velocizzare, puoi usare anche il piccolo
"trucco" indicato nel mio post precedente!).
Saluti
Ivo