WB/UCI a Fritz 8 CZ. Utility a návod pro WB/UCI enginy ve Fritzovi. Také konvertor pro Genia, hodně štěstí a trpělivosti při té snaze. Moje turnaje enginů. Moje knihovny - Knihovny pro různé programy. Download - Nějaké UCI a WB enginy ke stažení, linky na jejich stránky. Nový Polyglot od verze 1.4 umožňuje slučování knihoven, přičemž ponechává první a z druhé připojí jen to, co tam není, zbytek přeskočí. Když si vytvoříte vlastní způsob práce, vynikající věc.
turnajová varianta Vrstvy 1 + 2 (aktivní repertoár do hloubky 20 půltahů) Pro tyto první vrstvy navrhuji speciální databázi (zde dále 2008-1.pgn), bez počítačových partií, hlavně z posledních let. Doporučuji to ovšem napřed ukládat v ChessBasi jako *.cbh, snáze se vyhází dvojníci, vyhodí komentáře a smažou nějaké partie. Do *.pgn pak převeďte až konečný stav. Můj výběr z Megabáze 2008 a novějších TWIC byl přibližně: - poslední dva roky, ELO 2300+ (!). Trochu překvapivé, že? Občas to z těch návodů tvůrců knihoven vypadá, že kdo nemá ELO alespoň 2600, asi se naučil šachy někdy předevčírem. Ale i hráči nižšího ratingu přeci zvládnou zahrát dobrých 10 tahů dle teorie (ti pracovitější mají "své" varianty určitě prověřené i na počítači) a o to se v této první fázi jedná. Slabší varianty se (věřím) eliminují parametry min-score a min-game. Pokud se do knihovny nějaká nežádoucí věc přesto dostane, stačí zde pro opravu umáznout dané partie. Pasivní znalost kniha získá v dalších vrstvách. Ty nové partie doporučuji hlavně kvůli zmenšení pravděpodobnosti, že se motor dostane do nějaké sice dříve módní, ale dnes již vyvrácené varianty. Ona je totiž potíž s tím, co je vlastně kvalitní partie pro knihovnu. Podle mého názoru je to taková, kde je maximálně jedna rozhodující chyba (tu definuji jako chybu, která mění výsledek partie, např. remizuje vyhranou pozici, nebo partii prohrává). I v partii velmistrů takových chyb bývá víc, nyní si dělám komentované partie k přehrávání a např. v partii tuším Chalifman - Karpov jsem takové našel čtyři! Napřed se Karpov dostal do prohrané pozice, pak Chalifman zřejmě vypustil výhodu, potom po nepřesnosti mohl pravděpodobně prohrát, ale šanci zahodil i Karpov - remíza. Taková partie přitom s rezervou splňuje požadovaná kritéria na ELO. A představte si, kolik takových v té databázi máte, předpokládám, že nemáte čas analyzovat nejméně několik set (ale spíš tisíců) partií. Proto dávám přednost ještě většímu množství a důvěřuji spíše parametru min-game, než min-score. - a nějaká kvalita jako doplněk, dejme tomu 2700+ (roky 2000 a více), 2650+ (1995-2000), 2600+ (starší). Takhle postupně to dělám kvůli inflaci ELO v poslední době, když já začínal hrát v turnajích, tak 2600 stačilo tak na TOP 20, zatímco dnes ... . Ale těch prvních partií by mělo být o dost víc. - vyházet případné dvojníky, velmistrovské blicky a možná i rapidy (oni zde často hrají trochu jiná, méně solidní zahájení, v MegaBázi je přitom takových partií až dost), smazat krátké partie (dejme tomu do 15 tahů) i o něco delší remízy (třeba do 20 tahů). Tím se programu sníží příležitost hrát např. výměnnou francouzskou a podobné věci, což by se bez toho mazání mohlo klidně stát.
Pokud se nic nevytvořilo, Polyglotovi cosi vadí ve vaší databázi, vraťte se k tomu přeloženému návodu od Fabiena Letouzey (anglická verze by měla být v adresáři Polyglota, soubor readme.txt).
I zde byl nakonec vynechán parametr min-score. Jen se snížil minimální počet partií na 25 a nyní se kompiluje prvních deset tahů. Nadvakrát je to udělané proto, aby se eliminovaly málo používané (a tedy asi slabší) varianty, typu většiny gambitů, domečků (tomu by zase počítač nerozuměl a v turnajích se to moc nehraje, protože dobrý hráč obvykle nemá problémy s vyrovnáním), apod. O pravděpodobnosti přijatých tahů se v těchto dvou vrstvách stará Polyglot, na základě počtu partií a výsledného skóre, alespoň tak to je v návodu od Fabiena Letouzey. Všechny vytvořené dočasné knihovny, 2008-xxx.bin, se pak spojí až na závěr.
Vrstva 3 (aktivní repertoár do hloubky 30 půltahů a boční varianty)
Zde je opět parametr min-game pro začátek na 25, aby se do aktivní knihy dostaly především používané (a tedy snad dobré) varianty. Podobný smysl má i zde prvně použitý parametr min-score, zde 50 pro bílé a 40 pro černé. Můžete ho samozřejmě zvýšit, ale myslím, že jako hlavní ochranu proti slabým variantám je lépe používat min-game. Chce to s tím chvíli experimentovat, záleží na tom, jak máte vybranou databázi. Parametr max-ply 30 je tu kvůli paměti mého notebooku, protože mnou použitá databáze má i s těmi gambity/exoty přes 600k partií. Polyglot se tak vejde do těch volných asi 350MB RAM. Pokud bych zde přidal ještě nějaké partie, asi bych tuto vrstvu musel dělat na domácím počítači.
Vrstva 4 a 5 (doplnění do hloubky 30 půltahů)
polyglot make-book -min-game 5 -only-white -pgn 2008-1.pgn -bin 2008ew.bin -min-score 55 Smyslem je doplnit jako zřejmě již jen pasivní znalost to, co se předtím přeskočilo. To co už je v předchozích vrstvách, pak přeskočí při závěrečném spojování Polyglot.
Vrstva 6 a 7 (prodloužení za hloubku 30 půltahů)
Jak vidíte, znovu jen parametr min-game 3, bez omezení skóre. Občas se dle té speciální osmitahové knihovny CEGT hrají podivné varianty, ale protože tohle již zařídily předchozí vrstvy, je to eliminováno a podivné věci jsou zde jen jako pasivní znalost. Pro následnou vrstvu je další databáze, 2008-4.pgn. Tam už jsou z CEGT i všechny dlouhé partie na čas 40/120, dále dlouhé partie z Playchessu od určitého ELO a pár vybraných korespondenčních partií, kde jsem se spolehl na zdroj. Jinak je smysl podobný, jako u vrstvy šest, rozšířit knihovnu v hraných variantách o další půltahy, na základě kvalitních partií.
Podobně jako předtím, jen jsem ještě snížil min-game. Tím jsou řešeny počítači prověřen varianty za 15 půltah.
Vrstva 8 (doplnění o pasivní znalosti do 30 půltahů)
Jak vidíte, držím si odstup od utahování parametru min-score, pouze 40 pro černé a 50 pro bílé. Zde importované znalosti už totiž budou asi jen pasivní, pokud soupeř odbočí do bočních variant. Vzhledem k nekvalitnímu výběru té databáze tu stále je parametr min-game poněkud neobvykle na 5. Například proto, aby se tam nedostaly třeba věci z jakéhosi tématického turnaje před 15 lety, kdy ještě počítače korespondenčním hráčům zase tolik nepomáhaly (jak už jsem psal výše, k této databázi byla připojena i sbírka gambitových a exotických zahájení) a na prověření takového počtu variant prostě není čas.
Vrstva 8 (opravy, resp. prodloužení za hloubku 30 půltahů, pomocí dodatečných analýz)
Závěrečné spojení Doporučuji vytvořit podadresář temp v polyglotovi a tam si tyhle všechny dočasné knihovny schovat, kvůli pozdějšímu hledání chyb a opravám.
hráčské knihovny Tvorba knihoven podle partií jednotlivých hráčů je v Polyglotovi velmi snadná. Kvůli možnosti ukládat zvlášť tahy černého i bílého. To třeba v *.CTG u Fritze neuděláte, tam byste museli vytvořit knihovny dvě, zvlášť pro černé i bílé, nebo si několik večerů hrát s barvami variant podle hráčových partií. Poměrně obtížné by to bylo třeba i ve Spike BookBuilderu. Takže prvním krokem je vytvoření databáze partií požadovaného hráče. Dejme tomu třeba Kasparov. Najděte si v nějaké databázi (v mém případě Mega2008) všechny jeho partie bílými a uložte je do databáze třeba kasparov-b.cbh (opět doporučuji napřed pracovat s *.cbh, kvůli pročištění) a partie černými do kasparov-c.cbh. Máte-li ještě další zdroj partií, které třeba v Megabázi nejsou (U Kasparova? Snad nějaké ruské časopisy z konce 70.let. U aktivních hráčů pak třeba TWIC.), připojte je také. Je jen na vás, zda z toho vyházíte třeba krátké remízy, nebo i krátké výhry, velmistrovské rapidy a blicky. V každém případě je vhodné vyházet dvojníky a nutné je odstranit fragmenty partií, nebo FRC. Polyglot neumí pracovat s partiemi, začínajícími z jiné, než základní pozice a hlásí přitom chybu, obvykle nemožný tah. Můj postup tvorby partiových knihoven pak vypadal (kromě Estrina) takto:
V první vrstvě vše, co hrál Kasparov alespoň dvakrát. Parametrem max-ply jsem omezil hloubku do 29.tahu. Mě šlo spíše o zahájení, než o snahu reprodukovat Kasparovovy partie. V případě nějakých vyvrácených variant by se to mohlo zkrátit třeba i na 12 tahů, o zbytek by se postarala poslední, "záchranná" vrstva. Knihovna by tak hrála varianty jako Kasparov, ale dále v aktuální podobě.
Druhá vrstva pak připojí vše, co Kasparov hrál, ale jen pokud to neprohrál. Proto je tam parametr min-score na 50. Smyslem je nezanést do knihy nějaké hrubky (ale pokud nakonec neprohrál po chybě soupeře, stejně se to tam dostane, proto tento tip knihoven do turnajů počítačů moc nedoporučuji. Ovšem moje knihovna právě Kasparova si v testu Sedatovy Perfect13x vedla dobře, s výjimkou Sicilských B9).
No a máte knihovnu z Kasparovových partií. Taková je vhodná třeba na přípravu, ale pokud knihovnu chcete používat třeba pro zápasy motorů? Co když soupeř zahraje něco méně obvyklého, má Kasparov partii na Španělskou, kde černý hrál třeba 3.-Sc5? Já to řešil připojením běžné turnajové knihovny. Z prostorových důvodů jsem k tomu použil Lacrosseho performance.bin (všechny mé hráčské knihovny tohoto typu jsou ke stažení na stránce knihoven). Ale když už máte hotovou turnajovou knihovnu, můžete takto připojit vlastní. Zvlášť, pokud jste zkrátili tu délku, pomocí max-ply, to by se zrovna hodilo na tu zmiňovanou Sicilskou B97.
A co když vás zajímá jen určité období, např. když v letech 81-84 hrával dámský gambit s c5? Pak jeho partie z požadovaného období uložte ještě do dalších databází (jako předtím, černými i bílými zvlášť), třeba kasparov-b8184.pgn a kasparov-c8184.pgn.
polyglot make-book -min-game 2 -max-ply 58 -only-black -pgn kasparov-c.pgn -bin kasparov-c2.bin
polyglot make-book -min-game 1 -max-ply 58 -min-score 50 -only-black -pgn kasparov-c.pgn -bin kasparov-c3.bin
polyglot merge-book -in1 kasparov-c1.bin -in2 kasparov-c2.bin -out kasparov-c12.bin Je jen na vás, zda to celé takto převezmete, nebo něco odsud vyhodíte. Vynikající použití pro tyto knihovny jsou např. personality Rebela Pro Deo. Teoreticky by se to dalo používat i k přípravě, i když s zrovna s Kasparovem asi hrát nebudete. Na běžné soupeře zase budete mít asi příliš málo partií, aby to mělo smysl.
ladění turnajové knihovny pro jednotlivé motory Velice problematická věc, protože pokud nejste třeba vlastníky internetové kavárny, správci počítačové studovny apod., asi dost těžko dáte dohromady potřebný počet partií. Podle mého názoru by jich mělo být nejméně 1000, v nějakém rozumném minimálním tempu (nabízí se třeba 10+10, testy 1+1 já neberu). A formou turnaje jeden proti všem, proti třeba osmi až dvanácti konkrurentům. Např. Toga. Necháte ji hrát takový turnájek, se základní turnajovou knihou (zde ph-book2008.bin) proti 10 jiným silným motorům, pokud možno každému s jinou knihovnou, 100x bílými a 100x černými (2000 partií v tempu 10+10 na jednom počítači zabere zhruba 50 dní ...). Partie Togy se pak opět uloží, zvlášť bílými i černými.
Opět pozor na parametr min-score, já bych ho možná zase úplně vynechal, nebo ho nastavil raději na méně, než více. Co když nějakou dobrou variantu hrála Toga zrovna s Rybkou a prohrála někde daleko v koncovce? Můj nápad je udělat průměrný výsledek, např. bylo dosaženo 47.5% bodů. A plus/mínus 3% bílý černý, takže by to bylo třeba 45 černý /50 bílý. Max-ply se zde nemusí hnát moc do hloubky.
Podobně jako u hráčských knih vše, co se hrálo alespoň jednou a neprohrálo.
A hotovo. Na závěr je připojena základní knihovna, coby "záchranná" vrstva, kvůli pasivním znalostem. Předpokládám, že šířka repertoáru by se dost zredukovala. Vyladěná knihovna by pak výkon motoru možná mohla zvednout o dalších pár (se štěstím i desítek) ELO bodů. knihovny pro jednotlivá zahájení Tohle je, proti Fritzovskému *.ctg a Spike BookBuilderu, v Polyglotovi pro změnu o dost pracnější. V prvním případě jen změníte barvu pár variant, ve druhém to pak upravíte nastavením přímo ve stromu. Zde musíte vytvořit několik databází. Do první pro černé (dále index-1c.pgn) zadat ručně varianty, např. pro Francouzskou 1.e4 e6, 2.d4 e6 (aby měl možnost přejít po 2.e4), vlastně by měl černý hrát 1.-e6 a 2.-d5 (téměř) na cokoliv. Pokud ještě chcete ovlivnit, jak často se bude hrát která varianta, o to víc si zde musíte dát práci. Já bych se pro první pokus spokojil jen s 1.-e6, 2.-d5 a volbu konkrétních variant bych ponechal na vrstvě partií. Podobně další databázi za bílé (index-1b.pgn), zde by mohlo stačit 1.e4 a pokud si chcete hrát, tak 8x 1.e4 e6 2.d4, 2x 1.e4 e6 2.d3 a 1x třeba 1.e4 e6 2.f4. O to víc práce by bylo s určováním třetích tahů, kolikrát 3.Jc3, 3.Jd2, 3.ed5, 3.e5, nebo i něco dalšího, třeba gambitové 3.Se3. Do druhé (dále index-2.pgn) pak podle nějakého filtru najít partie, třeba vyhledávání podle pozice po 1.e4 e6 2.d4 d5, 1.e4 e6 2.d3 d5, nebo podle indexu C00-C19, omezit nějaké minimální ELO hráčů, vyházet krátké partie i o něco delší remízy a dvojníky. No a na závěr se zase přiloží standartní turnajová knihovna, jako "záchranná" vrstva pro případ, že soupeř prostě Francouzskou hrát nechce. Mohlo by to vypadat třeba takto:
polyglot merge-book -in1 index-c1.bin -in2 index-c2.bin -out index-c12.bin První vrstva by měla zaručit, že se program bude snažit vždy hrát určené zahájení. Druhá pak je omezená parametry max-ply na 20 a min-game na 10. Má na starost rozdělení na další varianty a parametry min-game 10 by měl zajistit, aby program nehrál ty největší "originality". No a třetí část se postará o zbytek, ve fázi spojování se připojí nějaká standartní knihovna pro doplnění ostatních zahájení. Zvláštním případem knihovny pro zahájení jsou mé gambitové a exotické knihy. Od těch pro jednotlivá zahájení se však liší jen tím, že je potřeba si dát mnohem více práce s ručně zadávanou databází (index-1?.pgn) a tu případně ještě rozložit na více vrstev, pro určení pravděpodobností pro první tah, druhý tah třetí tah a možná i čtvrtý tah. Vše se dělá takto postupně a pak se teprve připojí partiová databáze. Např. u Gambitové v prvním tahu by se mělo hrát nejméně v 70% případů asi 1.e4, anglická s 1.Jf3 asi vůbec a 1.f4 okrajově (kvůli možnosti 1.-e5). A černými pak např. na 1.Jf3 Jc6, aby měl bílý šanci přejít do otevřených her atd. Vrstva pro druhý tah pak např. po 1.e4 e5 rozdělí "práci" na 2.d4 (a 3.c3), 2.f4 a 2.Jf3. Třetitahová část si pak pohraje např. s variabilitou královského gambitu a rozdělením mezi gambity po 1.e4 e5 2.Jf3 Jc6. Je to celé docela pracné a doporučuji si tyto databáze ještě nějakou dobu ponechat, pro případné opravy. U staré gambitové knihy jsem naimportoval špatně vrstvu 3 bílých za černé, takže kvůli tomu se tam hraje jen královský gambit s 3.Jf3 g5 4.h4 - dělat to celé znovu se mi už nechtělo, možná se někdy dokopnu udělat gambitovou knihu i pro verzi 2008. Podobně se postupuje i s exotickou knihou, prostě tam ručně naklepete všechny možné (šachové) úchylky, co vás napadnou a ono z toho něco vyleze. Já si kvůli tomu prolistoval i Veselého encyklopedii, kde jsou uvedeny i varianty, které by mi samy nenapadly, např. 3.Se3 ve Francouzské, 3.-g5 ve Španělské atd. Dalším zdrojem je internet, nadšenci vedou stránky pro dost podivných variant. I exotická kniha si na verzi 2008 ještě nějakou dobu počká.Ale v těchto dvou případech nejsou zase aktualizace tak akutní, vždyť tyto knihy nejsou určeny pro turnajovou hru počítačů, maximálně se dají využívat pro testování jiných knihoven, kromě vlastního hraní. Co se importu partií pro vkládané varianty týká, asi bude potřeba slevit s tím minimálním ELO. Pro některé jsem tehdy šel třeba i na 2100+, aby vůbec měl alespoň trochu partií. 17.7.08: Zbytek dokončím zase někdy později, pro dnešek to snad stačí. |
|
---|