SmarThink by Sergei Markoff, Russia
Новая российская программа для Winboard - долгожданный подарок Сергея Маркова всем любителям шахмат! Отличительной чертой программы, как нам показалось, является ее агрессивность. В версии программы SmarThink 0.02 автор сделал небольшие улучшения. Улучшено управление Table-hash, а также увеличена скорость самого движка! С версией SmarThink 0.03b! автор подготовил новую библиотеку для своего движка. Как показало наше тестирование, эта версия SmarThink0.03a усилилась по сравнению с версией SmarThink0.02b не менее чем на 40-50 пунктов! Перформенс движка для блиц партий (5 минут на 40 ходов) составил 2333 ELO! В версии программы SmarThink 0.04a -0.06a Сергей внес много новых изменений и улучшений! Перформенс движка для блиц партий (5 минут на 40 ходов) составил 2360 ELO! Теперь в опциях SmarThink.ini файла можно изменять параметры агрессивности и большей или меньшей безопасности короля! Одиннацатая версия имеет рейтинг не менее 2450! Вместе с новой версией Сергей подготовил новую библиотеку! Новая библиотека подготовлена автором при участии (от 04.12.02) Carlos Pesce! Последняя версия движка SmarThink 0.17a! Сергей сделал множество уточнений и улучшений! По его оценке новая версия сильнее предыдущей от 15 до 45 пунктов! С января 2006 года появилась универсальная, поддерживающая протоколы Winboard и UCI, платная версия SmarThnk 1.00, которую предлагает известная компания LokaSoft. ориентировочный рейтинг последней версии ST 1.00- 2750 единиц. Начиная с версии SmartThink 1.40 вновь стала бесплатной! Последняя версия SmartThink 1.70.
Изменения версии SmatThink 1.60 (исправлена ошибка с неправильным выводом времени в режиме UCI; исправлена ошибка с обработкой команды stop в режиме multi-pv; новая реализация продлений при «единственных» ходах; обновлена оценка пешечных цепей;более «умное» распределение времени (теперь зависит от сочетания материала на доске); распознавание грядущих повторов позиции; настройка таблицы оценки полей для коней; использование меньшего объёма памяти при работе (очистка инициализационных массивов после использования); упрощен код delta-отсечения; удалён код расширенных отсечений по хэш-таблице (ETC); упрощён код отсечений pruning/razoring; улучшены прямые отсечения (forward pruning); исправлен ряд ошибок в корне дерева перебора; небольшие изменения в коде распознавания «внутренних» узлов)
Изменения версии SmatThink 1.70 (вывод в режиме UCI хода из хэш-таблицы перед началом перебора (более удобный вывод для анализа);переписан код для оценки пешечного прикрытия короля и пешечной атаки на это прикрытие;подстройка множества параметров оценочной функции — оценки материала, проходных пешек и кандидатов, атаки на короля и т.д.)
Последняя версия SmarThink 1.80 (новый способ оценки положения короля/атаки на короля; новый способ оценки проходных пешек; новая структура хеш-таблицы перестановок/опровержений; улучшенная оценка пешечной структуры; массовая подстройка параметров оценочной функции; различные мелкие исправления и оптимизации). По авторской оценке это обеспечило прибавку примерно в 50 пунктов! Последняя версия 1.90 (прибавка около 30 пунктов!). Нужны библиотеки! (их можно найти на странице, кторая в ссылке). SmarThink 1.95 - Поддержка эндшпильных таблиц в формате Syzygy; эндшпильные таблицы Налимова более не поддерживаются; более агрессивные прямые отсечения в дереве перебора; улучшено распределение времени; различные оптимизации; дальнейшая подстройка оценочной функции). Теперь этот архив содержит файл values.txt без которого движок играет значительно слабее! SmarThink 1.95 :основные изменения: эвристики реакции/следования/опровержения угрозы в упорядочивании ходов; оптимизация генератора ходов; использование версии PopCnt, не основанной на intrinsic-функции, для сборок не под SSE4 (должно обеспечить корректную работу на старых процессорах); оптимизация оценочной функции; динамическое доверительное окно; улучшенные отсечения/продления перебора. последняя версия движка 1.97 прибавила в силе от 30 до 50 пунктов!
Установка программы во всех отношениях является типовой и не должна вызвать сложностей. Командные строки в winboard.ini файле должны выглядеть следующим образом:
"SmarThink" /fd=c:\WinBoard\smarthink
"SmarThink" /sd=c:\WinBoard\smarthink
Последняя версия содержит управляющий файл, определяющий параметры ее работы. Это SmarThink.ini файл.
; Setup file for the SmarThink
;
; TranspositionSize - the size of transposition table
;
; Value Size (bytes)
;
; 15 655360
; 16 1310720
; 17 2621440
; 18 5242880
; 19 * 10485760
; 20 20971520
; 21 41943040
; 22 83886080
; 23 167772160
; 24 335544320
;
; * - default
;
TranspositionSize=19
;
; PawnHashSize - the size of pawn hash
;
; Value Size (bytes)
;
; 14 360448
; 15 720896
; 16 1441792
; 17 2883534
; 18 * 5767168
; 19 11534336
; 20 23068672
; 21 46137344
; 22 92274688
; 23 184549376
;
; * - default
;
PawnHashSize=19
;
; Aggressivity (%) - causes SmarThink to attack enemy king stronger
; (100 by default)
;
; 0 <= Aggressivity <= 300
;
Aggressivity=100
;
; Cowardice (%) - causes SmarThink to make care of own king
; (100 by default)
;
; 0 <= Cowardice <= 300
;
Cowardice=100
; In learning mode SmarThink saves a costly miscalculations in special
; file for using this info in next games
Learning=off
; When UseLearningData on, SmarThink uses data from learning file
UseLearningData=off
; If LogLearningIntoFile is on than SmarThink shows all learning positions
; in log-file (EPD-notation and several additional debug info)
LogLearningIntoFile=off
; If evaluation is less than *ResignValue* during *ResignTimes* moves
; than SmarThink resigns
ResignValue=800
ResignTimes=3
; In book learning mode SmarThink updates weights in openings book
BookLearning=off
; DISCOVER = play unchecked variations first to collect a weights,
; KILL = try to find best lines to overthrow opponent
BookLearningMode=KILL
; VarietyOfPlay (%) - play book move only if its weight is not less
; than weight of best move by *VarietyOfPlay* %.
VarietyOfPlay=15
; Update weight if abs(evaluation)>*BookLearningBound*
BookLearningBound=260
; No comments
UseBookWeights=on
; Support pondering or no?
Pondering=on
; Use endgame tablebases or no
UseEGTB=on
; Path to tablebase files
EGTBpath=c:\Tablebases
Скачать программу можно со странички DOWNLOAD.
Программа совместима с известными оболочками: Chess Assistant, ChessBase, ChessMaster 8000, Arena!
Подробное описание установки программы в среду Winboard можно найти на странице Winboard.