SmarThink v1.95

Тема в разделе "Машинное отделение", создана пользователем Сергей Марков, 24 май 2016.

  1. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    SmarThink v1.95 — версия движка от мая 2016. Основные изменения:

    — поддержка эндшпильных таблиц в формате Syzygy;
    — эндшпильные таблицы Налимова более не поддерживаются;
    — более агрессивные прямые отсечения в дереве перебора;
    — улучшено распределение времени;
    — различные оптимизации;
    — дальнейшая подстройка оценочной функции.

    Прирост в силе игры примерно 50 пунктов. При игре с самим собой на сверхкоротких контролях все 120, но это так, читерство)

    Скачать можно тут, как обычно: http://genes1s.net/smarthink.php

    [​IMG]
    WinPooh нравится это.
  2. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    Перезалил архив, в изначальном забыл values.txt, без него движок играет заметно слабее (если играет вообще).
  3. Локомотив Старожил

    • Участник
    • Старожил
    Рег.:
    30.03.2012
    Сообщения:
    4.948
    Симпатии:
    3.696
    Репутация:
    120
    Оффлайн
    В Аквариуме не работает. Версия 1.80 работает нормально, а вот 1.90 и 1.95 не фурычат.

    [​IMG]
  4. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    Это версия уже с values.txt?
    Ни один exe-шник не работает?..
  5. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.122
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Можно с этого места чуть поподробнее? :)
    На чём проводилось обучение? Сколько времени заняло? Каковы объёмы датасетов?
    Главное, сколько пунктов Эло это даёт (отдельно от прочих изменений в программе)?
  6. Локомотив Старожил

    • Участник
    • Старожил
    Рег.:
    30.03.2012
    Сообщения:
    4.948
    Симпатии:
    3.696
    Репутация:
    120
    Оффлайн
    Да, это версия с values.txt. Пока попробовал только с x64, другие не испытывал. Пробовал также загрузить движок в Hiarcs Explorer, вот что показывает.

    [​IMG]
  7. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    ~24 000 000 позиций, игры в основном разных версий SmarThink между собой, но и немного с другими движками, взяты позиции, в которых сделанный далее в партии ход не был взятием или превращением. Подстройка ведётся на 20-ядерном Xeon'е, в общем-то, безостановочно. Периодически добавляется какой-то новый фактор, либо удаляется, либо меняется способ его расчёта, и всё запускается снова. Я использую сочетание случайных векторов при спуске, покоординатного спуска и спуска с модификацией пары факторов. На плато примерно через 3—4 дня это дело выходит.

    В целом алгоритм похож на https://chessprogramming.wikispaces.com/Texel's+Tuning+Method, но со своими нюансами, да и использовать я его, наверное, начал раньше, чем автор Texel)

    Вот тут ещё некоторые подробности: http://www.talkchess.com/forum/viewtopic.php?t=55696&start=108

    Общий эффект от этой подстройки оценить трудно, т.к. там было очень много итераций. Но, наверное, в сумме пунктов 80 или 100.
    —- добавлено: 24 май 2016 —-
    А что будет если просто запустить exe-шник? Он запускается? Что пишет в консоли?..
  8. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.122
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Я вот тоже немного сейчас играюсь с этим методом, правда на меньших объёмах, порядка миллиона позиций. Случайные вектора сходятся очень плохо, покоординатный спуск гораздо быстрее (практически в том простейшем варианте, который в статье приведён). А вот с усилением проблемы, редко когда удаётся больше 10-20 пунктов таким образом набрать. Может быть, из-за того, что оценочная функция в целом очень простая, всего порядка 50 компонент. Или партий всё-таки маловато...

    По идее, метод должен работать и для ходов со взятиями и превращениями, если функционал считать с использованием qsearch. Программа будет учиться делать правильные размены... Но если только тихие ходы, то вместо qsearch можно и просто eval вызывать, это быстрее. Пробовал и так и так, результаты сравнимы.

    Типичные значения функционала у меня получаются где-то порядка 0.35 (среднеквадратичная ошибка предсказания исхода партии по всем позициям в ней), после оптимизации обычно сбрасывается несколько единиц в третьем знаке после запятой.
  9. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    Ну если юзать qsearch, то сильно скорость падает. Мне кажется, что это неоправданно. Чтобы делать правильные размены достаточно понимать, что вероятность победы зависит от конкретного набора материала на доске.

    Случайные векторы помогают выйти из локальных минимумов, в которые приходит покоординатный метод. Я не делаю случайных векторов по всему множеству факторов, т.к. это точно совсем плохо. У меня есть обычно группы факторов, внутри которых я выбираю случайные векторы, но не любые, опять же, а с кастомным распределением. Генерируются они так, что чем больше в векторе ненулевых компонентов и чем больше они по модулю, тем меньше вероятность генерации такого вектора.
  10. Локомотив Старожил

    • Участник
    • Старожил
    Рег.:
    30.03.2012
    Сообщения:
    4.948
    Симпатии:
    3.696
    Репутация:
    120
    Оффлайн
    [​IMG]
    —- добавлено: 25 май 2016, опубликовано: 25 май 2016 —-
    Установил dll файл в папку smt195, проблема вроде бы решилась.
    —- добавлено: 25 май 2016 —-
    Проблема решена. Удалось запустить движок в консоли и Аквариуме. Скачал dll http://ru.dll-files.com/libiomp5md.dll.html и скопировал в папку с программой.
    —- добавлено: 25 май 2016 —-
    Сергей Марков, наверно, надо добавить эту библиотеку в архив.
  11. Локомотив Старожил

    • Участник
    • Старожил
    Рег.:
    30.03.2012
    Сообщения:
    4.948
    Симпатии:
    3.696
    Репутация:
    120
    Оффлайн
    Провёл блиц-матч из 4х партий SmarThink 1,95 - Murka 3x64 - 3:1 (+3 -1). (Контроль 3+2, без книги).
    Впечатления пока довольно приятные. Играет активно, стремится к захвату пространства. Чёрными также стремится играть на перехват, а не на уравнение.
    Из отмеченных недочётов - чересчур оптимистичная оценка позиции. Равную позу оценивает как лучшую для себя, при минимальном перевесе рисует себе больше единицы. В единственной проигранной партии явно недооценил угрозы королю, рокировавшись в длинную сторону на ослабленный ферзевый фланг. В общем, неисправимый оптимист, вроде Ларсена или Боголюбова.
    Интересный тактический удар провел в следующей партии.






    43..e5! 44. Bxe5 На отход слона решает Qc8!
    44..Qc3 45.Bxd4 У белых нет ничего лучше, чем отдать качество: 45.Qe2 Bxe5 46.Qxe5 Rf1+ ; 45.Re2 Qa1+
    45..Qxe1 и т.п., остальное дело техники.

    Красивый геометрический мотив, эдакая вилка по двум диагоналям.

    vasa нравится это.
  12. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    exe-шники, в которых в названии есть _standalone, должны работать без неё.
  13. EvgeniyZh Учаcтник

    • Участник
    Рег.:
    07.02.2014
    Сообщения:
    487
    Симпатии:
    112
    Репутация:
    15
    Адрес:
    Ришон ле Цион, Израиль
    Оффлайн
    Я сколько не игрался, так у меня сходиться и не стало, на любых объемах. Счас другие методы пробую...

    Интересный факт - регулируя процент ничьих в датасете, можно регулировать агрессивность движка.
  14. Vlad_Imir Новичок

    • Новичок
    Рег.:
    12.11.2006
    Сообщения:
    77
    Симпатии:
    284
    Репутация:
    20
    Адрес:
    Россия
    Оффлайн
    smartthink.png
    C консоли этот екзешник запускается нормально, а в Арене (3.5.1) , вылетает. 180 версия SmartThink работаект нормально. Windows 7. 64 битная. Values.txt присутствует.
  15. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    Можно глянуть, что в View Problem Details?
  16. Vlad_Imir Новичок

    • Новичок
    Рег.:
    12.11.2006
    Сообщения:
    77
    Симпатии:
    284
    Репутация:
    20
    Адрес:
    Россия
    Оффлайн
    Problem signature:
    Problem Event Name: APPCRASH
    Application Name: SmarThink_v195_x64_standalone.exe
    Application Version: 0.0.0.0
    Application Timestamp: 5742ed1e
    Fault Module Name: SmarThink_v195_x64_standalone.exe
    Fault Module Version: 0.0.0.0
    Fault Module Timestamp: 5742ed1e
    Exception Code: c000001d
    Exception Offset: 000000000000f5d0
    OS Version: 6.1.7601.2.1.0.256.1
    Locale ID: 1049
    Additional Information 1: aab0
    Additional Information 2: aab0c111e8754e170c831ecc8b08a209
    Additional Information 3: 2796
    Additional Information 4: 2796bdc013e143e6ae50f803d930f766

    У меня бывали случаи, что архив некорректно скачивался, но я еще раз скачал с вашего сайта smt195.zip. Разархивировал rar-ом.
  17. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    А какой процессор на машине?
  18. Vlad_Imir Новичок

    • Новичок
    Рег.:
    12.11.2006
    Сообщения:
    77
    Симпатии:
    284
    Репутация:
    20
    Адрес:
    Россия
    Оффлайн
    Intel Core 2 Quad 6600, 4 Gb RAM
  19. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    Видимо, я накосячил где-то в параметрах при сборке версии x64 и из-за этого на машинах с SSE2 не работает. Я сегодня буду публиковать 1.96, попробуем это учесть...
  20. Vlad_Imir Новичок

    • Новичок
    Рег.:
    12.11.2006
    Сообщения:
    77
    Симпатии:
    284
    Репутация:
    20
    Адрес:
    Россия
    Оффлайн
    1.96 нормально работает. Спасибо.
  21. Stargazer Учаcтник

    • Участник
    Рег.:
    29.04.2013
    Сообщения:
    134
    Симпатии:
    75
    Репутация:
    6
    Оффлайн
    Файл SmarThink_v195_x32.exe запущенный в Win XP выводит свою инфу и совершает ошибку (из за чего ось его закрывает).
    Файл SmarThink_v196_x32.exe запущенный в Win XP ничего не выводит и сам закрывается.
    Файл values.txt, размером более чем в два раза превышающий ! сам движок (видимо призванный помочь последнему лучше думать:scratch:) рядом присутствовал.
  22. TopicStarter Overlay

    Сергей Марков Учаcтник

    • Участник
    Рег.:
    13.05.2006
    Сообщения:
    136
    Симпатии:
    6
    Репутация:
    0
    Оффлайн
    Видимо, под XP придётся делать отдельную сборку, там всё плохо уже(
    А скриншот с ошибкой можете прислать? Особенно если там можно подробности посмотреть. Также сообщите модель процессора.
  23. Stargazer Учаcтник

    • Участник
    Рег.:
    29.04.2013
    Сообщения:
    134
    Симпатии:
    75
    Репутация:
    6
    Оффлайн

    Proc P4 2,4GHz, Windows XP SP2 Home Edition (2005 года рухлядь) smt_err1.jpg smt_err2.jpg

Поделиться этой страницей