
		+-------------------------+
		!                         !
		!  PROCHESS 102 A doctor  !
		!    di Edoardo Manino    !
		!        (Italia)         !
		!                         !
		+-------------------------+

Campione Italiano 2012 nella categoria programmi originali!

# UNO STILE GREZZO

ProChess e' il coronamento di molti anni di studi scacchistici e
informatici. Ha una forza di gioco paragonabile a quella di un forte
candidato maestro e il suo stile e' brutale: ha una buona visione
tattica ma una pessima comprensione strategica. Insomma, gioca come
un computer!
Il nome "ProChess" vuole essere un sottile gioco di parole tra i
vocaboli inglesi "process", "pro" e "chess". Il primo significa
"processo", il secondo "professionale" (anche se il mio programma
non lo e'...), il terzo semplicemente "scacchi". Lo sfondo del logo
suggerisce una interpretazione giuridica di "processo", ma quella
informatica e' altrettanto valida!
Anche il numero della versione ha un significato: sono gli anni
dalla fondazione del mio circolo (1910), la gloriosa Societa'
Scacchistica Torinese.

# NOTE LEGALI

L'eseguibile di ProChess e' gratuito e puo' essere copiato e usato
liberamente senza fini di lucro. Non puo' essere modificato, ne'
ridistribuito a pagamento, ne' incluso in un altro software. L'autore
non e' responsabile di alcun danno o malfunzionamento hardware o
software derivante dall'uso di esso.
Il codice sorgente di ProChess e' pubblico al solo fine di mostrarne
il funzionamento interno. Nessuno e' autorizzato a copiarlo tutto
o in parte per qualsivoglia motivo.

# INSTALLAZIONE

Questo pacchetto contiene i seguenti file e cartelle:
- "LEGGIMI.txt" il file che state leggendo
- "README.txt" l'analoga versione inglese
- "ProChess101AD.exe" l'eseguibile del programma
- "ProChess.ini" il file con le opzioni
- "Logo100x50.bmp" il logo in formato 100 x 50 bit
- "Logo130x65.bmp" il logo in formato 130 x 65 bit
- "Books" contiene il libro di aperture in formato Arena e ChessBase
- "Data" contiene file indispensabili per il programma
- "Sources" contiene il codice sorgente di ProChess
ProChess non ha una propria interfaccia grafica ma e' in grado di
comunicare attraverso il protocollo UCI. Puo' quindi essere installato
su Arena, Fritz, ChessBase o analoghe. L'eseguibile e' stato compilato
a 32 bit per Windows e testato su XP, Vista e 7. Non funziona in
modalita' console.

# CARATTERISTICHE

ProChess e' un motore di analisi per forza bruta scritto interamente
in Visual Basic 6. Esso sfrutta molte tecniche e algoritmi noti:
- rappresentazione 0x88 della posizione
- alfa-beta negamax
- iterative deepening
- principal variation search
- analisi quiescente di catture e promozioni
- preordinamento delle mosse con MVV-LVA, SEE e history
- tabella delle trasposizioni
- internal iterative deepening
- funzione di valutazione basata solo su tabelle dei pezzi
- interpolazione lineare tra i valori in apertura e finale
- estensioni degli scacchi a SEE positivo
- futility pruning
- mossa nulla
- ponder
Non sono supportati i comandi "setoption", "searchmoves" e
la modalita' "multipv" del protocollo UCI.

# OPZIONI

Aprire il file "ProChess.ini" per modificare le opzioni.
Un valore positivo del contempt fara' preferire a ProChess
varianti forzate di patta. Il parametro hashtable permette
di modificare la larghezza della tabella delle trasposizioni.
Ogni elemento occupa 16 byte di memoria. Se persistence e' falso,
i vecchi elementi verranno cancellati prima di ogni analisi.
Verbosity regola l'output di ProChess: 0 invia solo la bestmove,
1 mostra le analisi, 2 le scrive anche sul file di log.

# RINGRAZIAMENTI

Moltissime persone hanno contribuito direttamente o indirettamente
allo sviluppo di ProChess. Tra di esse voglio ringraziare Andrea
Macheda per il paziente lavoro fatto come sparring partner, Luca
Nassi per avermi aiutato nel tuning della valutazione imprestandomi
il suo hardware fenomenale, tutti i membri del G6 per i loro preziosi
consigli e mio fratello Federico senza il quale non sarei mai
diventato un programmatore.
Un ringraziamento particolare a Tomasz Michniewski per aver pubblicato
sul Chess Programming Wiki la sua funzione di valutazione semplificata
che e' stata alla base delle versioni precedenti di ProChess.
