atakurt wrote:Да, имам конкретен въпрос, от който ще стане ясен текстът по-надолу:
КАКВА ТИ Е КОНФИГУРАЦИЯТА НА ТВОЯ ЛИЧЕН ЛАПТОП, thenewone, И ОТ КОЛКО ВРЕМЕ АНАЛИЗИРАШ ПОЗИЦИИ С "РИБКА 3" НА НЕГО???
Линкът за лаптопи показва сравнение за "Deep Fritz 10", програма, отдавна не използвана даже и от баба ми.
А и двата линка показват търговско отношение, а не професионално - още повече, че е МНОГО трудно да бъдат намерени в България за закупуване конфигурациите от висок ранг.
Указаните в линковете конфигурации са и неефективни за цената си спрямо нуждите на шахматиста, тъй като имат показатели, които не трябват на един шаханализатор - например високи данни за игри в мрежа (казано на прост език).
Проблемът, който поставих, беше друг и може да се прочете ясно и точно.
Ако търсих това, за което отговаряш, щях сам да си го намеря - разполагам със свръхмощни търсачки.
Все пак, благодаря!
На въпросите, по реда им:
1.За съжаление (а може би за радост
) нямам лаптоп. Настолният ми компютър е с 2-ядрен процесор на Intel, E2180. Другите параметри не са от голямо значение за работата на шахматните модули.
2.Това, че в линка за лаптопи като тестов модул е използван "Deep Fritz 10", който не го ползва отдавна даже баба ви
, няма никакво значение, защото целта е да се сравни производителността на различните процесори, а не да се покаже максималната стойност, която може да бъде постигната.
3.Конфигурациите са примерни. За аналитичният модул е най-важна скоростта на процесора. На второ място е оперативната памет, но тука също има тънкости. Можеш да имаш 8 ГБ РАМ, но ако отделиш 16 МБ за хеш на модула, естествено, че резултатите ще са доста по-ниски.
4.Съжалявам, че не съм отговорил точно на въпроса.
5.Моля
Сега малко собствено творчество
Явно дори и гросмайсторите не са много наясно с принципа, по който работят аналитичните модули, затова накратко ще нахвърлям основните неща, които всеки трябва да знае.
Да вземем, например, програмата "Deep Fritz 11" или "Deep Rybka". Грубо казано, тя се състои от графичен интерфейс, към който могат да се включват аналитични-игрови модули, наричани "engines". За да комуникират помежду си графичният интерфейс и аналитично-игровият модул, са създадени "протоколи", които дават основните закони за общуването им. Най-разпространени сред модулите са 3 протокола: Winboard, UCI (разчитано като Universal Chess Interface) и протоколът на Chessbase. Някои от аналитичните модули поддържат и UCI, и WB (Winboard), които са отворени протоколи, за разлика от този на Chessbase (под който работи аналитично-игровият модул Fritz). Съществуват буквално СТОТИЦИ такива модули, които поддържат UCI или WB, като повечето от тях играят доста силно и са безплатни при това: старата, безплатна версия на Naum (който сега диша във врата на Rybka и е смятан за главният й конкурент, ако може изобщо да се говори за конкуренти на Rybka-та
), Fruit, Toga, Crafty, Pro Deo, Scorpio, Strelka/Belka и много, много други. Компютърни ентусиасти, подобни на нашия Nikola, сблъскват модулите един срещу друг и въз основа на резултатите от мачовете създават рейтинг-листи. Най-известните рейтинг-листи са на SSDF, CEGT и CCRL. От тях можете да се информирате за сравнителната сила на аналитично-игровите модули, които днес са доста по-силни от прочутата Deep Blue, която успя да победи в мач самия Каспаров.
Програмите на Chessbase (Chessbase 10, Deep Fritz, Deep Rybka и т.н.) освен своя си, Chessbase-овски протокол, поддържат и протокола UCI. Най-известните комерсиални UCI-модули са, разбира се, на първо място Rybka, Zappa, Shredder (авторът на последният е и изобретател на самия UCI-протокол), Junior. Аналитично-игрови модули, неподдържащи UCI-протокола, а само по-стария, WB-протокол, също могат да бъдат включвани към програмите на Chessbase, чрез програма-адаптер, но процедурата е малко по-сложна и изисква специфични знания. Освен програмите на Chessbase, съществуват и други графични интерфейси, към които могат да се включват аналитично-игрови модули -- комерсиалните Shredder, ChessAssistant/Aquarium, ChessPartner, както и безплатните Arena (изцяло преведена на български) и Winboard. Единственият аналитично-игрови модул, който не може да бъде включен към тях, е Chessbase-овския Fritz.
Как работи един аналитично-игрови модул? Сложно за обяснение, още повече, че не съм програмист
Накратко, във всеки един модул са заложени алгоритми за оценка на позицията и алгоритми за търсене. Според тях, модулът избира кои са най-перспективните ходове, и според своята скорост, както и според даденото му време за анализ, стига до оценка на крайната позиция и съответно, раздава оценка на всички ходове-кандидати. Скоростта на модулите се определя от броя позиции, разглеждани за единица време (наричани "nodes per second", което аз превеждам като "възли в секунда") и дълбочината, която модулът стига при търсенето, измервана в plies (полуходове). По този начин се разчитат цифричките, които се показват в прозореца на аналитичния модул. kN/s означава kilo-nodes per second, тоест 340 kN/s означава, че в момента модулът оценява по 340 000 позиции на секунда. Дълбочината на търсене (depth или само d) например е 16 plies, което на човешки език означава, че модулът оценява позицията на 8 хода след дадения ход.
Различните модули имат различна скорост на изчисляване на еднакъв хардуер. Едни смятат по-бързо, други по-бавно, това зависи от алгоритмите, заложени във всеки един от тях. Прието е да се смята, че увеличаването на скоростта на процесора 2 пъти, добавя към силата на модула приблизително 50 ЕЛО-точки, тоест, ако един модул има рейтинг от 2500 ЕЛО на Pentium II от 1 GHz, на процесор от 2GHz, рейтингът на същият този модул ще е приблизително 2550. Същото се отнася и за броят на процесорите -- ако рейтингът на един модул на 1 процесор е ~2500, при използването на 2 процесора същият модул ще има рейтинг от ~2550. Смята се, че удвояването на броя на процесорите увеличава общата производителност на модулите не 2 пъти, както е естествено да се очаква, а с фактор в диапазон от 1,4 до 1,8 -- в зависимост от това, колко добре авторът на модула е написал поддръжката на многопроцесорността. Трябва да се отбележи, че не всички модули поддържат многопроцесорност. Тези, които я поддържат, обикновено биват кръщавани Deep
Много от модулите имат както еднопроцесорна, така и многопроцесорна версия -- най-ярък пример е, разбира се, пак нашата любима Rybka
Скоростта и дълбочината на търсене зависят също от вида на позициите, които биват анализирани -- например, в ендшпила, когато на дъската има по-малко фигури и по-малко ходове-кандидати, модулите стигат по-голяма скорост и по-голяма дълбочина при изчисленията си.
Тази бързина на аналитичните модули, освен от процесора, зависи и от размера на така наречените хеш-таблици (hash). Понеже при изчисленията си, модулите записват крайните оценки на тези стотици хиляди и милиони позиции, които оценяват, в тях, е хубаво размерът на хеша да е съобразен със задачата, която е поставена пред модула. За анализ е добре хешът да е повечко (512 МБ, например), докато при игра, настройката на хеша е задача за специалисти, тъй като зависи от специфичните особености на всеки модул. Най-общото правило е, че колкото по-къса е контролата, толкова по-малък трябва да е хешът, колкото е по-дълга -- толкова повечко трябва да са отделените за него МБ (при UCI-модулите хешът може да се настройва от графичния интерфейс, докато при WB-модулите трябва да се поправя конфигурационния файл на модула, или значението да се задава в команден ред). Съответно, ако на контрола, примерно, 1 минута/партия, хешът на Rybka e 64МБ, логично е за двупроцесорната версия хешът за същата тази контрола да е увеличен с фактор от поне 1,5, тоест 96МБ. Ако хешът е твърде малко при по-дълга контрола, съществува опасността от това паметта, отделена за хеш-таблиците бързо да се запълни и модулът да почне да ползва твърдия диск, което чувствително намаля неговото бързодействие и се отразява зле на производителността му.
Това са основните неща, има, разбира се, още много тънкости и подробности, но засега толкоз