Мастера DELPHI, Delphi programming community Рейтинг@Mail.ru Титульная страница Поиск, карта сайта Написать письмо 
| Новости |
Новости сайта
Поиск |
Поиск по лучшим сайтам о Delphi
FAQ |
Огромная база часто задаваемых вопросов и, конечно же, ответы к ним ;)
Статьи |
Подборка статей на самые разные темы. Все о DELPHI
Книги |
Новинки книжного рынка
Новости VCL
Обзор свежих компонент со всего мира, по-русски!
|
| Форумы
Здесь вы можете задать свой вопрос и наверняка получите ответ
| ЧАТ |
Место для общения :)
Орешник
Коллекция курьезных вопросов из форумов
Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / rsdn.org

 
Чтобы не потерять эту дискуссию, сделайте закладку « предыдущая ветвь | форум | следующая ветвь »
Страницы: 1 2 3 4 5 6 7 8

AlphaZero - как работает??


xayam ©   (14.02.19 21:18[120]


> 100% рыба

ты же вроде за комодомцст болел?


java_guy ©   (15.02.19 11:38[121]

а что значит "позиции будут всё более разбалансированы"?


Mystic ©   (15.02.19 16:00[122]


> ты же вроде за комодомцст болел?


Да, мне Komodo MCTS представляется более интересным.


> позиции будут всё более разбалансированы


Например, королевский гамбит. Удержат ли белые ничью или проиграют? Вот, SF удержал ничью, а Lc0 нет.


java_guy ©   (16.02.19 14:30[123]

Мистик, а вот такой вопрос. Я лет 7-8 назад увлекался немного темой MCTS with UCT.
И я помню две вещи:

1. Монте-Карло хорош для игр, где оценочную функцию трудно написать (го, например). В шахматах ОФ давно получена хорошая. По идее шахматам не нужен MCTS, главное хорошо дерево вариантов резать. То есть Stockfish рано хоронить и там еще не всё сказано

2. У MCTS, как известно, четыре стадии (selection, expansion, playout, backpropagation). Самая интересная часть - playout. И тут вопрос: как проиграть партию? Если чисто случайными ходами, то сила программы, основанной на Монте-Карло, будет невысока. Желательно сыграть максимально безошибочную партию, тогда и оценки узлов будут корректными.


Mystic ©   (16.02.19 15:34[124]

1. Скорее наоборот, Alpha-beta хороша для игр, где позволяет ветвистость игры и можно написать оценочную функцию. Поэтому для шахмат такой подход следует рассмотреть. А вот лучший это подход или нет надо экспериментировать. MCTS же хорошо подходит для многих игр. Как показывает пример Komodo MCTS, результаты можно сравнивать.

Если сравнивать вообще алгоритмы MCTS и alpha-beta, то... alpha-beta имеет проблему горизонта, и сейчас в чистом виде у сильных движков почти не встречается. Даже тот же Stockfish делает случайные доигрывания. Проблемой для alpha-beta являются крепости (по мнению SF у белых есть лишняя ладья, но в силу замкнутости пешечных цепей её не реализовать). Ну и разные долгоиграющие факторы, например, оценка долгосрочной инициативы соперника. MCTS имеет тот недостаток, что может пропустить тактику (меньше узлов в поиске).

2. Komodo MCTS доигрывает при помощи усечённой alpha-beta со специфической оценочной функцией. При этом оценка Komodo в окончаниях часто точнее SF, потому что хорошо понимает, что такое крепость (нулевой процент побед при доигрывании). AlphaZero доигрывала в первых версиях на основании предложения нейросети. Потом от этого отказались, там сейчас нейросеть возвращает оценку и на основании температуры выбирается узел для последующего рассмотрения. Оценка в окончании часто не соответствует действительности при таком подходе. Мои шашки — чистый рандом. Ну а так playout + инициализация начальных оценок ходов — простор для творчества.


java_guy ©   (16.02.19 15:56[125]

А как вам такая идея?
Играет движок сам с собой методом MCTS, строится дерево Монте-Карло, playout-ы при этом играются так: смотрятся все первые ходы, делаются, возвращается оценка и выбирается ход с лучшей оценкой. То есть никакого рандома.
По итогам определенного количества партий выбирается  лучший набор параметров для ОФ и идет дальше коррекция весов для ОФ.


xayam ©   (16.02.19 21:00[126]

похоже сбой в железе случился


xayam ©   (16.02.19 21:30[127]

да похоже лиле засчитали падение, она пока на очко впереди.
А партия будет переигрываться?


Mystic ©   (17.02.19 13:35[128]


> А партия будет переигрываться?


Дали переиграть. По правилам, крэш считается поражением, дисконнект переигрывается.


> А как вам такая идея?


Хотите — пробуйте. Пока описано нечётко, но я вижу две возможные проблемы: №1 позиции после разных ходов будут похожи, и сложно придумать ОФ, чтобы на это реагировала; №2 непонятно на каких данных обучать ОФ?


java_guy ©   (18.02.19 17:52[129]

Мистик, а вы смотрели исходный код Lc0?

Я вот не могу понять, что на выходе получается после кучи сыгранных партий самообучения? какой-то файл с trained data?


xayam ©   (19.02.19 00:51[130]


> что на выходе получается после кучи сыгранных партий самообучения?
>  какой-то файл с trained data?

вот же ссылка http://lczero.org/networks/


java_guy ©   (19.02.19 04:44[131]

xayam, спасибо за ссылку


xayam ©   (19.02.19 09:28[132]


> xayam, спасибо за ссылку

вообще первая ссылка в гугле по запросу "Lc0" ведёт на этот сайт :)


java_guy ©   (19.02.19 10:35[133]

А Leela Chess во время игры использует шахматные знания?  Дебютную библиотеку? Таблицы Налимова, Sygyzy? Или только свое?


xayam ©   (19.02.19 10:47[134]


> А Leela Chess во время игры использует шахматные знания?
>   Дебютную библиотеку? Таблицы Налимова, Sygyzy? Или только
> свое?

ну вот сейчас идет tcec на сайте chessdom и там все это используется,
но а так это по желанию - можно отключить


java_guy ©   (19.02.19 11:23[135]

И насколько пунктов ЭЛО меньше, если отключить?


xayam ©   (19.02.19 11:31[136]


> java_guy ©   (19.02.19 11:23) [135]
> И насколько пунктов ЭЛО меньше, если отключить?

трудно сказать, но если у противника lc0 тоже отключить,
то я думаю для lc0 это преимущество.
Думаю, до 100 Эло не больше, если противник будет иметь дебютные и эндшпильные базы


Mystic ©   (20.02.19 13:13[137]


> Я вот не могу понять, что на выходе получается после кучи
> сыгранных партий самообучения? какой-то файл с trained data?
>


Не знаю, не смотрел. Но логично, чтобы в обучающей выборке была позиция, ход который приводил к набору очков (½, 1). Плюс оценка результата доигрывания (статистика).


java_guy ©   (22.02.19 07:43[138]

Как думаете, почему после публикации материалов от разработчиков Alpha Zero шахматная программа на этом принципе появилась почти сразу,  а для го по-прежнему нет?


xayam ©   (22.02.19 08:15[139]


> появилась почти сразу,  а для го по-прежнему нет?

вообще то го раньше появилась. Первоначальный автор
https://en.wikipedia.org/wiki/Leela_Zero
LeelaZero назвал программу в го
и только потом из нее сделали LeelaChessZero или Lc0


Страницы: 1 2 3 4 5 6 7 8 версия для печати

Написать ответ

Ваше имя (регистрация  E-mail 







Разрешается использование тегов форматирования текста:
<b>жирный</b> <i>наклонный</i> <u>подчеркнутый</u>,
а для выделения текста программ, используйте <code> ... </code>
и не забывайте закрывать теги! </b></i></u></code> :)


Наверх

  Рейтинг@Mail.ru     Титульная страница Поиск, карта сайта Написать письмо