Конференция "Прочее" » 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
 
Конференция "Прочее" » AlphaZero - как работает??
Есть новые Нет новых   [118448   +36][b:0.001][p:0.001]