Forchess - форум о заочных шахматах  

Вернуться   Forchess - форум о заочных шахматах > Заочные турниры и партии > Шахматные программы и движки

Ответ
 
Опции темы Опции просмотра
Старый 04.06.2016, 17:13   #1
Харлампий
2 разряд
 
Аватар для Харлампий
 
Регистрация: 03.06.2016
Сообщений: 441
Сказал(а) спасибо: 534
Поблагодарили 1,949 раз(а) в 431 сообщениях
Репутация: 181
По умолчанию Stockfish и его производные



Stockfish 14
Stockfish 14 для Android
https://ufile.io/f/8ardx
https://pixeldrain.com/l/ndVpnHXc#item=1

Архив предыдущих версий: https://www.dropbox.com/sh/75gzfgu7q...UfHbBr4r_RwhGa

Официальный сайт стокфиш

Обновления тестовых версий стокфиша: http://abrok.eu/stockfish/

Сборки Stockfish и CorChess от I. Ivec

Развитие движка http://tests.stockfishchess.org/tests

Stockfish_NNUE https://github.com/nodchip/Stockfish

Сети: https://www.comp.nus.edu.sg/~sergio-v/nnue/

AsmFish

Сборки от Maratka

Компиляции движков от ChessMan

Сборка Stockfish от Otodranik

Sugar от Marco Zerbinati

Shark и Orka

О Stockfish

Цитата:
Авторы движка
Двигатель Stockfish был разработан Tord Romstad, Marco Costalba и Joona Kiiski. В настоящее время он развивается и поддерживается сообществом Stockfish.

Авторы приложений
Stockfish для Mac был собран Daylen Yang. Stockfish для iOS был собран Tord Romstad.

История
Проект Stockfish начался с движка Glaurung с открытым исходным кодом, созданного Tord Romstad. В ноябре 2008 года Марко Косталба разветвил код Glaurung 2.1 и представил Stockfish 1.0. Торд и Джоона Кииски присоединились к проекту «Стилфиш», и проект «Гларунг» постепенно исчез. Тем временем, Stockfish быстро поднялся, чтобы стать самым сильным шахматным движком с открытым исходным кодом, с частыми обновлениями каждые несколько месяцев. Сегодня он остается одним из самых сильных двигателей в мире.

О GPL
Stockfish является бесплатным и распространяется в соответствии с GNU General Public License Version 3 (GPLv3). По сути, это означает, что вы можете делать практически все, что хотите, с программой, включая ее распространение среди своих друзей, делая ее доступной для загрузки с вашего веб-сайта, продавая ее (либо самостоятельно, либо как часть некоторого более крупного программного пакета ) или использовать его в качестве отправной точки для собственного программного проекта.

Единственное реальное ограничение заключается в том, что всякий раз, когда вы каким-либо образом распространяете Stockfish, вы всегда должны включать полный исходный код или ссылку на исходный код. Если вы внесете какие-либо изменения в исходный код, эти изменения также должны быть доступны в GPL.

Для получения полной информации прочитайте GPL.
[свернуть]

Последний раз редактировалось ChessMan; 04.07.2021 в 09:38. Причина: Добавил ссылку на Стокфиш 14 + ссылка на пред. версии + Android
Харлампий вне форума   Ответить с цитированием
59 пользователя(ей) сказали cпасибо:
ALEKS (05.10.2017), Alexandr_L (07.09.2017), Alex_Lk (28.09.2018), Alex_Zet (04.12.2018), Antuan (01.01.2019), Arikchess (02.03.2018), Benoni (18.05.2020), Borisk (02.12.2018), Chess762 (01.12.2016), ChessMan (30.10.2017), Cr@ck (30.03.2019), Demch (15.07.2018), genadiy (06.12.2018), gens (26.10.2018), Ghppn (31.12.2019), Gigabayt (14.09.2020), GL2016 (04.06.2016), IgorPastukhov (06.02.2018), ivm1995 (03.12.2017), KERCH (04.06.2016), kruzh (08.02.2019), Lawyer (18.09.2018), Maratka (24.05.2018), Michael Strelkov (29.01.2017), Ofiscer (06.06.2016), ogr56 (08.07.2019), Padre (18.11.2020), Psyclone2513 (06.10.2017), Raptor (17.11.2018), Rybka (21.01.2020), SergeyTUR (04.02.2019), Shadow (15.11.2017), SKY (11.05.2020), sovaz1997 (03.10.2017), ssserg (27.06.2020), Stavross (04.06.2016), tt66 (04.06.2016), valery 64 (16.07.2021), ValstepAS (23.12.2018), Vovan (22.03.2019), Александр (30.10.2018), Александр Руденко (26.07.2020), АЛЕКСЕЙ1976 (15.08.2021), Валекс (27.11.2018), Виталий В. (13.07.2016), Владимир Харламов (09.12.2019), Владимир001 (09.08.2020), Гудвин (04.06.2016), Иван (03.07.2021), илья (13.07.2021), Кевин (30.03.2017), Котюргин (12.09.2021), Ларин (09.02.2018), Петригин Олег (04.06.2016), Реналь (18.07.2020), Ренат (17.10.2016), Роман (02.06.2021), Философ (04.06.2016)
Старый 20.11.2018, 10:11   #3511
Кевин
Гроссмейстер
 
Аватар для Кевин
 
Регистрация: 02.07.2016
Адрес: Сахалин
Сообщений: 4,792
Сказал(а) спасибо: 5,116
Поблагодарили 14,196 раз(а) в 4,064 сообщениях
Записей в дневнике: 251
Репутация: Кевин отключил(а) отображение уровня репутации
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Vizvezdenec
http://tests.stockfishchess.org/test...bc5902bcecbf62
Ещё немного патчей.
Даёт бонус за ограничение мобильности противника, правда, весьма странно выглядящий... Но работает


Author: xoto10
Date: Tue Nov 20 07:50:12 2018 +0100
Timestamp: 1542696612

Bonus for restricting opponent's piece moves

STC:
LLR: 2.96 (-2.94,2.94) [0.00,5.00]
Total: 51883 W: 11297 L: 10915 D: 29671 Elo +2.56
http://tests.stockfishchess.org/test...bc595e0ae3cacd

LTC:
LLR: 2.96 (-2.94,2.94) [0.00,5.00]
Total: 15859 W: 2752 L: 2565 D: 10542 Elo +4.10
http://tests.stockfishchess.org/test...bc5902bcecbf62

Notes:

(1) The bonus value has not been carefully tested, so it may be possible
to find slightly better values.

(2) Plan is to now try adding similar restriction for pawns. I wanted to
include that as part of this pull request, but I was advised to do it as
two separate pull requests. STC is currently running here, but may not add
enough value to pass green.

Bench: 3679086


http://abrok.eu/stockfish/
__________________
ICCF SIM 2547, International Arbiter, ICCF "Promotional Tournaments - Server" Organiser, RCCA Chess 960 Champion, ICCF 4th Chess 960 World Cup Final Winner.
Кевин вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Валекс (20.11.2018)
Старый 20.11.2018, 10:12   #3512
Кевин
Гроссмейстер
 
Аватар для Кевин
 
Регистрация: 02.07.2016
Адрес: Сахалин
Сообщений: 4,792
Сказал(а) спасибо: 5,116
Поблагодарили 14,196 раз(а) в 4,064 сообщениях
Записей в дневнике: 251
Репутация: Кевин отключил(а) отображение уровня репутации
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Vizvezdenec
Даёт бонус за ограничение мобильности противника
Кстати, патч довольно быстро прошёл, но второго LTC не провели
__________________
ICCF SIM 2547, International Arbiter, ICCF "Promotional Tournaments - Server" Organiser, RCCA Chess 960 Champion, ICCF 4th Chess 960 World Cup Final Winner.
Кевин вне форума   Ответить с цитированием
Старый 20.11.2018, 10:18   #3513
Кевин
Гроссмейстер
 
Аватар для Кевин
 
Регистрация: 02.07.2016
Адрес: Сахалин
Сообщений: 4,792
Сказал(а) спасибо: 5,116
Поблагодарили 14,196 раз(а) в 4,064 сообщениях
Записей в дневнике: 251
Репутация: Кевин отключил(а) отображение уровня репутации
По умолчанию Re: Stockfish и его производные

Author: Joost VandeVondele
Date: Tue Nov 20 08:00:19 2018 +0100
Timestamp: 1542697219

Force time check on TB probe in search.

Because of aggressive time management and optimistic assumptions
about move overhead, it's still very easy to get Stockfish to forfeit
on time when we hit an endgame and have Syzygy EGTB on a spinning
drive. The latency from serving a few thousand EGTB probes (~10ms each),
of which there can currently be up to 4000 outstanding before a time
check, will easily overwhelm the default Move Overhead of 30ms.

This problem was first raised by Gian-Carlo Pascutto and some solutions
and improvements were discussed in the following pull requests:
https://github.com/official-stockfis...fish/pull/1471
https://github.com/official-stockfis...fish/pull/1623
https://github.com/official-stockfis...fish/pull/1783

This patch is a minimal change proposed by Marco Costalba to lower
the impact of the bug. We now force a check of the clock right after
each tablebase read.

No functional change.


http://abrok.eu/stockfish/
__________________
ICCF SIM 2547, International Arbiter, ICCF "Promotional Tournaments - Server" Organiser, RCCA Chess 960 Champion, ICCF 4th Chess 960 World Cup Final Winner.
Кевин вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Валекс (20.11.2018)
Старый 20.11.2018, 10:22   #3514
Vizvezdenec
Гроссмейстер
 
Аватар для Vizvezdenec
 
Регистрация: 30.05.2018
Адрес: Севастополь
Сообщений: 4,022
Сказал(а) спасибо: 56
Поблагодарили 5,294 раз(а) в 2,673 сообщениях
Репутация: 216
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Кевин
Кстати, патч довольно быстро прошёл, но второго LTC не провели
А зачем? Он STC прошёл тоже без всяких проблем.
Второй LTC обычно проводят, когда STC не пройдён.
Vizvezdenec вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Кевин (20.11.2018)
Старый 20.11.2018, 14:41   #3515
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Всё равно не понимаю.

Почему в SF есть настройка Skill Level ( 0 .. 20 ), которая прямо "регулирует" силу игры
и нет настройки Dynamical Contempt ( on / off ), влияние которого на силу игры весьма
скромное ( ? )

Т.е. юзер может выбрать ( Skill Level = 5 ) и примерно получить SF2 вместо SF9.

Перед выходом SF10 было бы совсем неплохо добавить в настройки переключатель
Dynamical Contempt ( on / off )
Asunta вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
ck195708 (20.11.2018)
Старый 20.11.2018, 14:51   #3516
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Почему в SF есть настройка Skill Level ( 0 .. 20 ), которая прямо "регулирует" силу игры
Для того, чтобы не травмировать психику людей, играющих против движка.

Цитата: Сообщение от Asunta
и нет настройки Dynamical Contempt ( on / off )
Потому что это по сути своей часть системы оценки позиции.

Цитата: Сообщение от Asunta
Перед выходом SF10 было бы совсем неплохо добавить в настройки переключатель
Dynamical Contempt ( on / off )
Добавьте.
Maratka вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Asunta (20.11.2018)
Старый 20.11.2018, 14:54   #3517
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Maratka
Потому что это по сути своей часть системы оценки позиции.
Ерунда!
Asunta вне форума   Ответить с цитированием
Старый 20.11.2018, 14:56   #3518
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Maratka
Добавьте.
Надо чтобы добавил "сертифицированный патчрайтер" ( в SF-master! ), а не аматор
Asunta вне форума   Ответить с цитированием
Старый 20.11.2018, 14:58   #3519
Vizvezdenec
Гроссмейстер
 
Аватар для Vizvezdenec
 
Регистрация: 30.05.2018
Адрес: Севастополь
Сообщений: 4,022
Сказал(а) спасибо: 56
Поблагодарили 5,294 раз(а) в 2,673 сообщениях
Репутация: 216
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Ерунда!
Нет.
При перевесе стокфиш старается сохранять фигуры, а не размениваться в эндшпиль с той же оценкой, а при плохой позиции наоборот стремится к разменам и переходу в плохой, но удерживаемый эндшпиль.
Фактически это такая правка того, что оценки эндшпилей несколько раздуты - в общем-то это и правда параметр оценки. Даёт 2-3 эло примерно
Кстати, проблема того, что эндшпили с +1 выиграны у движков гораздо реже, чем миттельшпили с +1, существует практически во всех движках (даже в Лиле) и некий workaround такой вот от стокфиша - это очень креативное и необычное решение того, как с ней бороться.
И если не нравится - выпиливайте его сами, там 1,5 строчки кода...
Vizvezdenec вне форума   Ответить с цитированием
6 пользователя(ей) сказали cпасибо:
Asunta (20.11.2018), Chess762 (21.11.2018), ck195708 (20.11.2018), Maratka (20.11.2018), Viktor (20.11.2018), Кевин (20.11.2018)
Старый 20.11.2018, 15:02   #3520
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Можно в search.cpp вместо
int dct = ct + 88 * previousScore / (abs(previousScore) + 200);

Тупо взять:
int dct = 0;

И его ( Dynamical Contempt ) уже нет.



Хорошее место для переключателя:

int dct;
if( "...on" ) dct = ct + 88 * previousScore / (abs(previousScore) + 200);
else dct=0;
Asunta вне форума   Ответить с цитированием
Старый 20.11.2018, 15:08   #3521
Vizvezdenec
Гроссмейстер
 
Аватар для Vizvezdenec
 
Регистрация: 30.05.2018
Адрес: Севастополь
Сообщений: 4,022
Сказал(а) спасибо: 56
Поблагодарили 5,294 раз(а) в 2,673 сообщениях
Репутация: 216
По умолчанию Re: Stockfish и его производные

Можно.
Учитывая, что движок с открытым исходным кодом, Вы можете взять любой компилятор и это сделать.
А команде стокфиша есть, чем заняться, кроме как сделать отключаемыми каждый параметр оценки и поиска, да Вы же и сами взвоете потом от такого количества галочек для настройки
Vizvezdenec вне форума   Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
Asunta (20.11.2018), Chess762 (21.11.2018), Viktor (20.11.2018)
Старый 20.11.2018, 15:16   #3522
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Параметр важный! Он увеличивает оценку в среднем на 0.15 ( неоправданно! )
У многих есть базы, дебютные деревья и прочие наработки. И там все оценки
в стиле ( Dynamical Contempt: off ). К тому же адвансеры преимущественно
используют SF. Для игры SF против SF Dynamical Contempt мало что даёт.

То ли дело в матчах или турнирах с другими движками ( именно для такого
праздника и нужно иногда иметь ( Dynamical Contempt: on )
Asunta вне форума   Ответить с цитированием
Старый 20.11.2018, 15:33   #3523
Vizvezdenec
Гроссмейстер
 
Аватар для Vizvezdenec
 
Регистрация: 30.05.2018
Адрес: Севастополь
Сообщений: 4,022
Сказал(а) спасибо: 56
Поблагодарили 5,294 раз(а) в 2,673 сообщениях
Репутация: 216
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Параметр важный! Он увеличивает оценку в среднем на 0.15 ( неоправданно! )
У многих есть базы, дебютные деревья и прочие наработки. И там все оценки
в стиле ( Dynamical Contempt: off ). К тому же адвансеры преимущественно
используют SF. Для игры SF против SF Dynamical Contempt мало что даёт.

То ли дело в матчах или турнирах с другими движками ( именно для такого
праздника и нужно иногда иметь ( Dynamical Contempt: on )
Да не увеличивает он оценку на 0,15, это кто такое сказал?
Вы же сами только что написали формулу
int dct = ct + 88 * previousScore / (abs(previousScore) + 200);
Т.е., чтобы увеличить оценку на 0,15, нужно, чтобы при полной доске фигур
88 * previousScore / (abs(previousScore) + 200) было равно 15, т.е. previousScore = 41, при этом это нормированная на PawnValueEg/100 оценка, т.е. надо умножить ещё на 2.08.
Поэтому можно сказать, что при полной доске фигур он растянет оценку с 0,85 до 1, а в глубоком эндшпиле она будет 0,93 (т.к. в эндшпиле добавляется ct/2). А уж в позициях около нуля ни о каких 0,15 и речи быть не может.
И для игры SF против SF это даёт 2-3 эло, проверенно неоднократно, при этом значение эло для более длинного временного контроля выше, чем для короткого, т.е. и для адванса небесполезно.
Но если уж СОВСЕМ хочется убрать - берите и убирайте. Я Вас уверяю, что недостаток возможный в скорости в вашей сборке сравнительно с официальной типа пары процентов будет абсолютно незаметен на временном контроле адванса.
Vizvezdenec вне форума   Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Asunta (20.11.2018), Chess762 (21.11.2018)
Старый 20.11.2018, 15:44   #3524
Vizvezdenec
Гроссмейстер
 
Аватар для Vizvezdenec
 
Регистрация: 30.05.2018
Адрес: Севастополь
Сообщений: 4,022
Сказал(а) спасибо: 56
Поблагодарили 5,294 раз(а) в 2,673 сообщениях
Репутация: 216
По умолчанию Re: Stockfish и его производные

Я, честно, не очень хорошо знаю конкретно этот кусок кода, но там у меня вышло что для увеличения оценки на 0,15 нужно то ли 0,85 базовой оценки, то ли 1,09 - в общем в районе единицы (я немного не уверен, в каком порядке там делаются действия ). Основная же "фишка", что он будет при Вашем перевесе выдавать скорее варианты, ведущие к позициям с большим материалом, а при "недовесе" будет стараться вырулить в эндшпиль. Прям "сильно" на оценку это не влияет, можете считать, что даёт 0,15 оценки на полную доску фигур за каждые 1 реальной оценки.
Vizvezdenec вне форума   Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Asunta (20.11.2018), Chess762 (21.11.2018)
Старый 20.11.2018, 22:31   #3525
Кевин
Гроссмейстер
 
Аватар для Кевин
 
Регистрация: 02.07.2016
Адрес: Сахалин
Сообщений: 4,792
Сказал(а) спасибо: 5,116
Поблагодарили 14,196 раз(а) в 4,064 сообщениях
Записей в дневнике: 251
Репутация: Кевин отключил(а) отображение уровня репутации
По умолчанию Re: Stockfish и его производные

18-11-19 gog master
ELO: 53.77 +-1.9 (95%) LOS: 100.0%
Total: 40000 W: 9754 L: 3612 D: 26634

40000 @ 60+0.6 th 1 Regression/progression test against SF9 after "Stockfish 10-beta" of November, 19th

__________________
ICCF SIM 2547, International Arbiter, ICCF "Promotional Tournaments - Server" Organiser, RCCA Chess 960 Champion, ICCF 4th Chess 960 World Cup Final Winner.
Кевин вне форума   Ответить с цитированием
Старый 21.11.2018, 11:47   #3526
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Есть такой вопрос.

После команд вида
go depth #x -------- Исследовать позицию только до глубины в #x полуходов.
go movetime #x --- Обдумывать позицию в течение ровно #x миллисекунд

движок думает, выдаёт результаты анализа и должен перейти в режим ожидания
следующей команды go...

Есть ли в тексте подходящее место, чтобы после вывода результатов сразу же сделать Clear Hash ( ? )
При этом над своим следующим ходом движок будет думать с нуля.

Подозреваю, что здесь должно быть минимум два варианта:
1. Вызов некой функции по очистке Hash
2. Подача на вход консоли UCI-команды, которую движок легко отработает в режиме паузы

Вопрос, собственно, в том как "это" максимально культурно оформить, чтобы не задеть чего-нибудь важного ( ? )




Например в файле Search.cpp есть функция

void Search::clear() {

Threads.main()->wait_for_search_finished();

Time.availableNodes = 0;
TT.clear(); // это случайно не Clear Hash ( и нельзя ли её вызывать из других мест? )
Threads.clear();
Tablebases::init(Options["SyzygyPath"]); // Free up mapped files
}



Мне кажется, что самое безобидное место в файле uci.cpp:

void go(Position& pos, istringstream& is, StateListPtr& states) {

Search::LimitsType limits;
string token;
bool ponderMode = false;

Search::clear(); // добавить всего одну строчку!

limits.startTime = now(); // As early as possible!

while (is >> token)
if (token == "searchmoves")
while (is >> token)
limits.searchmoves.push_back(UCI::to_move(pos, token));

else if (token == "wtime") is >> limits.time[WHITE];
else if (token == "btime") is >> limits.time[BLACK];
else if (token == "winc") is >> limits.inc[WHITE];
else if (token == "binc") is >> limits.inc[BLACK];
else if (token == "movestogo") is >> limits.movestogo;
else if (token == "depth") is >> limits.depth;
else if (token == "nodes") is >> limits.nodes;
else if (token == "movetime") is >> limits.movetime;
else if (token == "mate") is >> limits.mate;
else if (token == "perft") is >> limits.perft;
else if (token == "infinite") limits.infinite = 1;
else if (token == "ponder") ponderMode = true;

Threads.start_thinking(pos, states, limits, ponderMode);
}

Последний раз редактировалось Asunta; 21.11.2018 в 12:47.
Asunta вне форума   Ответить с цитированием
Старый 21.11.2018, 13:06   #3527
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Stockfish и его производные

Вы бы лучше объяснили, для какого реального применения нужно очищать Hash?
Maratka вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Asunta (21.11.2018)
Старый 21.11.2018, 13:14   #3528
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Для адванс-тестов ( вместо блиц- или рапид- тестов )

Адвансер запускает анализ, выбирает лучший ход, закрывает партию
до следующего хода. Через несколько дней выбирает следующий ход.
Всё это как минимум через рестарт движка ( в том числе и Clear Hash ) происходит.
Asunta вне форума   Ответить с цитированием
Старый 21.11.2018, 13:22   #3529
sovaz1997
Гроссмейстер
 
Аватар для sovaz1997
 
Регистрация: 27.09.2017
Адрес: Москва
Сообщений: 4,142
Сказал(а) спасибо: 2,297
Поблагодарили 2,510 раз(а) в 1,635 сообщениях
Репутация: 92
По умолчанию Re: Stockfish и его производные

Заполненный хеш обычно намного лучше, чем пустой, если одна позиция вытекает из другой
sovaz1997 вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Asunta (21.11.2018)
Старый 21.11.2018, 13:26   #3530
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Всё это как минимум через рестарт движка ( в том числе и Clear Hash ) происходит.
Ну так и зачем его специально чистить, если он и сам почистился? ;)

Цитата: Сообщение от sovaz1997
Заполненный хеш обычно намного лучше, чем пустой, если одна позиция вытекает из другой
+1
Maratka вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Asunta (21.11.2018)
Старый 21.11.2018, 13:35   #3531
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Чтобы смоделировать адванс-партию в тест-партии между движками нужно,
чтобы чтобы они перед каждым следующим ходом автоматически чистили хэш.

Кстати. Многие партии на блиц-контролях движки проигрывают именно из-за
использования старого хэша ( если соперник не отходит от 1-й линии )

Про "зачем это нужно" я могу ещё долго рассказывать.

Вопрос был "Как?"
Место для Search::clear(); подходящее ( ? )
Asunta вне форума   Ответить с цитированием
Старый 21.11.2018, 14:09   #3532
sovaz1997
Гроссмейстер
 
Аватар для sovaz1997
 
Регистрация: 27.09.2017
Адрес: Москва
Сообщений: 4,142
Сказал(а) спасибо: 2,297
Поблагодарили 2,510 раз(а) в 1,635 сообщениях
Репутация: 92
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Чтобы смоделировать адванс-партию в тест-партии между движками нужно,
чтобы чтобы они перед каждым следующим ходом автоматически чистили хэш.

Кстати. Многие партии на блиц-контролях движки проигрывают именно из-за
использования старого хэша ( если соперник не отходит от 1-й линии )

Про "зачем это нужно" я могу ещё долго рассказывать.

Вопрос был "Как?"
Место для Search::clear(); подходящее ( ? )
Если вы хотите смоделировать детерминированную партию, вам надо будет ее запускать на фиксированном числе узлов, на одном потоке. В таком случае, хеш не надо чистить.
sovaz1997 вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Asunta (21.11.2018)
Старый 21.11.2018, 14:14   #3533
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Не "детерминированную партию", а партию адвансеров.
Как ведут себя адвансеры и как это смоделировать - описано выше.

Search::clear(); работает просто отлично.
Вопрос уже не актуален.

Всем спасибо за обсуждение!
Asunta вне форума   Ответить с цитированием
Старый 21.11.2018, 19:59   #3534
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Не "детерминированную партию", а партию адвансеров.
Как ведут себя адвансеры и как это смоделировать - описано выше.

Search::clear(); работает просто отлично.
Вопрос уже не актуален.

Всем спасибо за обсуждение!
На счет "работает просто отлично" - это Вы наверное поспешили.




Score of Stockfish_x64_211118_popcnt_mingw820 vs Stockfish_x64_211118_SC_popcnt_mingw820: 45 - 1 - 18 [0.844]
Elo difference: 292.96 +/- 83.72

78 of 20000 games finished.






=============
Хотя, необходимую Вам задачу оно выполняет.
ChessMan вне форума   Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Asunta (21.11.2018), Maratka (22.11.2018)
Старый 21.11.2018, 23:54   #3535
Asunta
Гроссмейстер
 
Аватар для Asunta
 
Регистрация: 10.07.2018
Сообщений: 1,406
Сказал(а) спасибо: 776
Поблагодарили 2,282 раз(а) в 935 сообщениях
Репутация: 230
По умолчанию Re: Stockfish и его производные

Играет "оно" с себе подобными.

Чтобы "оно" разорвало обычный Сток, нужно давать контроль не по времени,
а по глубине. Cкажем, не 1мин + 1сек, а Depth(32)
Asunta вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
ChessMan (22.11.2018)
Старый 22.11.2018, 00:20   #3536
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Asunta
Играет "оно" с себе подобными.

Чтобы "оно" разорвало обычный Сток, нужно давать контроль не по времени,
а по глубине. Cкажем, не 1мин + 1сек, а Depth(32)
Сравнение разных движков (бенч разный - значит движки разные) по заданной глубине - некорректно. Лучше проводить тесты с ограничением по количеству нодесов.

ChessMan вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Asunta (22.11.2018)
Старый 23.11.2018, 09:05   #3537
SKY
3 разряд
 
Аватар для SKY
 
Регистрация: 10.09.2018
Сообщений: 204
Сказал(а) спасибо: 82
Поблагодарили 55 раз(а) в 39 сообщениях
Репутация: 7
По умолчанию Re: Stockfish и его производные

Дилемма,ждать,или не ждать 10-й стокфиш,наверно существенной разницы не будет.Скорее всего идет проверка на ошибки перед реализом.
Может кто-то в курсе сколько примерно времени проходит от бета версии до официальной?
SKY вне форума   Ответить с цитированием
Старый 23.11.2018, 09:21   #3538
Rom77
Мастер
 
Аватар для Rom77
 
Регистрация: 11.08.2017
Адрес: Киров
Сообщений: 912
Сказал(а) спасибо: 888
Поблагодарили 1,197 раз(а) в 632 сообщениях
Репутация: 132
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от SKY
Может кто-то в курсе сколько примерно времени проходит от бета версии до официальной?
Мейнтейнер предполагает ждать неделю:
Цитата:
Preparation commit for the upcoming Stockfish 10 version, giving a chance to catch last minute feature bugs and evaluation regression during the one-week code freeze period.

http://abrok.eu/stockfish/
Rom77 вне форума   Ответить с цитированием
Старый 23.11.2018, 09:49   #3539
Vizvezdenec
Гроссмейстер
 
Аватар для Vizvezdenec
 
Регистрация: 30.05.2018
Адрес: Севастополь
Сообщений: 4,022
Сказал(а) спасибо: 56
Поблагодарили 5,294 раз(а) в 2,673 сообщениях
Репутация: 216
По умолчанию Re: Stockfish и его производные

Официальные релизы стокфиша делаются только для тех, кто не хочет почему-то качать аброковскую версию. Так-то в них ничего особого по сравнению с любой другой аброковской сборкой не будет
Vizvezdenec вне форума   Ответить с цитированием
Старый 23.11.2018, 10:42   #3540
Michael Strelkov
2 разряд
 
Аватар для Michael Strelkov
 
Регистрация: 17.01.2017
Адрес: Московская обл., г.Нахабино
Сообщений: 261
Сказал(а) спасибо: 118
Поблагодарили 935 раз(а) в 228 сообщениях
Репутация: 46
По умолчанию Re: Stockfish и его производные

Цитата: Сообщение от Vizvezdenec
Официальные релизы стокфиша делаются только для тех, кто не хочет почему-то качать аброковскую версию. Так-то в них ничего особого по сравнению с любой другой аброковской сборкой не будет
У них цифра версии красивая!
Michael Strelkov вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 15 (пользователей: 0 , гостей: 15)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 11:28. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Рейтинг@Mail.ru