Шахматные алгоритмы, которые думают почти так же, как человек, только лучше

    Когда создавались первые вычислительные машины, их воспринимали только как дополнение к человеческому разуму. И до недавнего времени так и было. Программисты учили компьютеры играть в шахматы с 1960-х годов. И тогда победа у игрока-новичка уже считалась большим прогрессом. О серьёзных матчах даже не задумывались.

    В 1980-х программа Belle достигла рейтинга Эло в 2250 пунктов, что примерно соответствует рейтингу мастера спорта. И с того времени развитие компьютерных шахмат вышло на совершенно новый уровень. 

    Сначала честь человечества не смог защитить Гарри Каспаров в 1996 году, а сегодня уже создана нейросеть с рейтингом около 5000 Эло, что в разы превосходит даже сильнейших игроков.

    Сегодня разберёмся, как работают шахматные алгоритмы и почему нейросеть Alpha Zero думает практически так же, как человек, только лучше.


    Как работает шахматный движок: от механического перебора вариантов до «умного» выбора

    У шахмат довольно простые правила. Две противоборствующие стороны, шесть разновидностей фигур и одна цель – дать мат сопернику.

    Но при этом вариативность шахмат просто огромна. Существует 400 уникальных комбинаций первого хода – 20 вариантов первого полухода белых и 20 вариантов ответа чёрных. С каждым последующим ходом количество уникальных позиций увеличивается на степень.

    Общее количество уникальных партий в шахматы составляет примерно 10120, что на 1040 превышает количество атомов во Вселенной.

    Шахматам не грозит быть посчитанными полностью. Поэтому в бой вступают алгоритмы оценки позиции и дерево возможных ходов.

    В шахматной теории у каждой фигуры есть своя ценность, которая измеряется в пешках:

    • Конь – 3 пешки;

    • Слон – 3 пешки;

    • Ладья – 5 пешек;

    • Ферзь – 9 пешек;

    • Пешка – 1 пешка.

    Король – бесценен, потому что его потеря означает проигрыш партии.

    Анализ современных машин подтверждает истинность такой оценки. Так, в зависимости от позиции на доске компьютер оценивает ферзя в 9–12 пешек, ладью – в 5–6, коня и слона – в 3–5. Короля же машина оценивает в 300 пешек. Это задаёт максимальную границу оценки.

    Чтобы было более понятно, преимущество в 0,5 пешки – это уже неплохо для шахматиста. В целую пешку – серьёзный перевес. В 3 пешки – подавляющее преимущество, которое можно практически без проблем довести до победы.

    Но счётные возможности машины ограниченны. Иногда она показывает оценку в +51 или что-то вроде. Это означает, что алгоритм видит колоссальное преимущество белых в позиции и материале, но не может найти конкретный путь к мату. 

    Минимакс, или прямой перебор вариантов, в таком случае не работает. Даже КМС без проблем найдёт на доске мат в 3 хода в миттельшпиле, когда на доске ещё много фигур. А программе для этого нужно будет перебрать свыше 750 млн. полуходов. 

    Даже если программа перебирает 1 млн вариантов в секунду, чтобы найти мат в 3 хода, ей понадобится до 750 секунд, или 12,5 минут. 

    И это глубина в 3 хода. В стратегических позициях, где развитие игры идёт с учетом на пять или десять ходов вперёд, такие программы и вовсе будут бесполезными.

    Поэтому для анализа позиции используется алгоритм под названием «альфа-бета-отсечение».

    Система анализирует начальные варианты ходов и сразу отсекает те из них, которые ведут к мгновенному ухудшению оценки. 

    Программа отметает те варианты, в которых она сразу проигрывает материал или которые включают комбинации со стороны соперника, в ходе которых она выигрывает материал или партию.

    Это позволяет сократить количество рабочих линий на порядки, сосредотачивая вычислительные ресурсы только на тех ветвях дерева, которые в перспективе ведут к улучшению позиции. 

    Псевдокод для минимакса с ограниченной глубиной с отсечением альфа-бета выглядит следующим образом:

    function alphabeta(node, depth, α, β, maximizingPlayer) is
        if depth = 0 or node is a terminal node then
            return the heuristic value of node
        if maximizingPlayer then
            value := −∞
            for each child of node do
                value := max(value, alphabeta(child, depth − 1, α, β, FALSE))
                α := max(α, value)
                if α ≥ β then
                    break (* β cutoff *)
            return value
        else
            value := +∞
            for each child of node do
                value := min(value, alphabeta(child, depth − 1, α, β, TRUE))
                β := min(β, value)
                if β ≤ α then
                    break (* α cutoff *)
            return value

    За код особо не ругайте.

    Рассмотрим на примере. Движок Stockfish считается сегодня одной из самых сильных компьютерных шахматных программ. Обратите внимание на первые пять линий.

    Из всего множества вариантов развития событий программа выбирает ряд линий, которые в перспективе ведут к улучшению позиции. Их она анализирует более глубоко – на 15–20 ходов вперёд, чтобы отсечь возможные проигрышные варианты. В результате она выбирает лучшую из возможных линий и делает ход. 

    После ответа соперника ситуация снова анализируется по тому же алгоритму. Сначала отсекаются заведомо проигрышные линии (таких порядка 95 %), а затем путём более глубокого анализа перспективных вариантов выбирается лучший из них.

    Новая эра в шахматных движках: нейросеть Alpha Zero

    В 2017 году компания Deep Mind объявила о создании нейросети Alpha Zero. Тестировать её решили на трёх самых популярных стратегических настольных играх: шахматы, го и сёги.

    Обучение и подготовка нейросети отличаются от классических компьютерных движков. 

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

    Alpha Zero не использует ничего, кроме правил. Ей просто дали стартовую позицию, объяснили, как ходят фигуры, и цель игры – поставить мат сопернику. И всё.

    За 24 часа игры с самой собой нейросеть смогла достичь сверхчеловеческого уровня игры и по сути изобрести заново всю шахматную теорию, которую человечество по крупицам разрабатывало веками.

    В декабре 2018 года Alpha Zero во второй раз сразилась с самой последней версией движка Stockfish.

    Исследователи провели 1000 партий с контролем 3 часа на партию плюс 15 секунд на ход. Alpha Zero одержала уверенную победу, выиграв в 155 партиях, сыграв вничью 839 партий и проиграв только 6.

    Более того, Alpha Zero одерживала победу даже в партиях с форой по времени на обдумывание. Имея в 10 раз меньше времени, чем у противника, нейросеть всё равно победила в суммарном итоге. Только 30-кратная фора во времени смогла уравнять шансы и дать Stockfish примерно равную игру – 3 часа у движка и всего лишь 6 минут у нейросети.

    Alpha Zero анализирует лишь 60 000 позиций в секунду, а тестируемая версия Stockfish – 60 млн. позиций. Для достижения аналогичных результатов анализа нейросети нужно в 1000 раз меньше ресурсов, чем движку.

    Секрет успеха – в качественно другом уровне анализа. Нейросеть использует метод Монте-Карло, который высчитывает математическое ожидание комплекса ходов.

    Если альфа-бета отсечение способно убрать большинство заведомо проигрышных вариантов, то проверять перспективные всё равно нужно механическим перебором, нейросеть сосредоточена на вариантах, которые ведут к улучшению позиции фигур, материальному перевесу, стеснению фигур соперника или созданию комплексных угроз, включающих матовые атаки.

    И, что гораздо более важно, при оценке ситуации Alpha Zero учитывает стратегическую позицию. 

    Давайте рассмотрим на примере одной из партий.

    После 20-го хода на доске творится невообразимая стратегическая борьба. Но если нейросеть шаг за шагом минимально укрепляет свою позицию, избавляясь даже от призрачных слабостей, то движок с 24-го по 29-й ход просто топчется на месте ладьёй. 

    Интересно, что Stockfish в упор не видит стратегических решений Alpha Zero, оценивая позицию как абсолютно ничейную. Но в результате минимальных укреплений позиции к 39-му ходу оказывается, что все фигуры белых активны, а чёрный конь и слон занимают пассивную оборонительную позицию. А после размена ферзей и ладей даже Stockfish оценивает преимущество нейросети в +2,2. Ещё несколько ходов – и король черных зажат в углу доски, а конь в одиночку не способен справиться с проходной пешкой. Поэтому программа сдалась.

    Позиционная игра – это то, что отличает нейросеть от классического шахматного движка. Ведь она подразумевает длительные игровые планы, которые часто превышают вычислительные возможности машин.

    Тем не менее нейросеть умеет играть позиционно не хуже человека и при этом идеально играет тактические позиции, где преимущество достигается в течение 5 или меньше ходов. 

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

    Многие теоретики считают, что благодаря шахматным компьютерам повысился и средний рейтинг топовых шахматистов. Ведь современные тренировки включают глубокую проработку компьютерных вариантов и разбора партий движками. Средний рейтинг ведущих топ-100 шахматистов в 2000 году составлял 2644 пункта Эло, а в январе 2021 года – 2715. За 20 лет среднее значение увеличилось на 71 пункт. 

    Сегодня человек уже не способен соревноваться с компьютером в шахматах. Нейросеть вобрала в себя все преимущества человеческого шахматного мышления, но при этом лишена его недостатков. 

    Она умеет мыслить позиционно и при этом не допускает зевков и ошибок. И самое интересное в этом – шахматы для Alpha Zero являются только тестовым полигоном, где система оттачивает навыки работы. Реальные же её цели Google не раскрывает. Поэтому здесь может быть всё что угодно: от анализа изменений климатической ситуации до создания системы идеально персонифицированной рекламы. А как вы считаете, для чего создают настолько мощную нейросеть?

    Создать своего гениального цифрового шахматиста или получить Level Up по навыкам и зарплате можно пройдя онлайн-курсы SkillFactory со скидкой 40% и промокодом HABR, который даст еще +10% скидки на обучение. Узнайте подробности.

    Другие профессии и курсы
    SkillFactory
    Школа Computer Science. Скидка 10% по коду HABR

    Комментарии 30

      +2
      Общее количество уникальных партий в шахматы составляет примерно 10120, что на 1040 превышает количество атомов во Вселенной.

      Eсли выражаться корректно, число 10**120 в 10**40 больше числа 10**80, но никак не на 10**40.

        +3
        Человек раньше был сильнее машины, потому что он обладает интуицией — она позволяла выбрать правильный ход быстро и без глубокий просчетов (скорее всего они проводятся, но подсознательно)
        Когда машина достигла такой мощности, что она теперь может просчитывать партии на 25 ходов вперед и далее, интуиция человека нивелировалась и машина стала обыгрывать чемпионов.

        Программа AlphaGo в 2017 победила в матче против Кэ Цзе, сильнейшего в мире игрока в игру го — это был последний рубеж, который людям удавалось удерживать против машин.
          +2
          Человек раньше был сильнее машины, потому что он обладает интуицией

          Не сколько интуицией, сколько позиционной игрой. Машина находила выигрыш, условно, пешки в 3 хода. А шахматист, который отдал пешку, видит, что можно все фигуры поменять, остаться с слоном против слона и двумя проходными пешками на разных флангах против трёх в центре. Своим королём и слоном он затормозит пешки в центре, а машина за двумя зайцами на крайних вертикалях доски не угониться. Компьютеру, чтобы не брать «бесплатную» пешку нужно было-бы считать на 30-40 ходов вперёд (это 60-80 полуходов, довольно глубоко даже для современных движков, запущенных не на серверах).
          Как раз-таки «жадность к пешкам» движков эксплуатировалась, в том числе, тем-же Каспаровым, когда он обыгрывал движки))
            –2
            Нет там никакой интуиции. Человек использует наработанный опыт. То есть в процессе проведения игр в памяти откладываются выигрышные ходы в определённых комбинациях. Чем больше играешь, тем больше «база».
            До определённого момента программы каждый раз заново просчитывали лучший ход, тратя на это гору времени, а потом кому-то в голову пришла мысль о том, что можно сохранить в базе удачные ходы. С этого момента программы получили аналог «опыта». Это был конец времён, когда человек мог потягаться с программой.
            С некоторых пор в каждую бочку начали пихать нейросети. Инструмент безусловно мощный, но не без изъянов. Так, например, распознавалки картинок могут определить что на картинке с вероятностью в 30% животное, но с вероятностью 80% кошка. Аналогичные грабли могут выползти у нейросети натасканной на шахматы. Просто попадётся игрок, чья манера игры не вписывается в ту, на которой(ых) проходило обучение.
            Ну и вишенка на торте — человек может что-то прозевать, а программа нет(отлаженная программа).
            А вообще, лично я считаю, у шахмат не заслуженный имидж жутко интеллектуальной игры. По факту это такая же мастурбация для мозга, как те же пасьянсы. Не однократно видел как по-настоящему умные люди разгромно проигрывали в шахматы весьма недалёким людям.
              +1
              Нет там никакой интуиции. Человек использует наработанный опыт. То есть в процессе проведения игр в памяти откладываются выигрышные ходы в определённых комбинациях. Чем больше играешь, тем больше «база».

              Может в дебюте или эндшпиле такое может иметь место, но в миттельшпиле никакая память не поможет. Запоминание «выигрышных ходов» — это ваша фантазия, чаще всего нужно считать варианты. И интуиция работает, особенно когда на просчет времени или сил нету.

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


              А бывает, что весьма недалекие люди рассуждают на умные темы. Маструбация для ЧСВ.
                0
                Запоминание «выигрышных ходов» — это ваша фантазия, чаще всего нужно считать варианты. И интуиция работает, особенно когда на просчет времени или сил нету.

                Странно, почему «интуиция» не просыпается у человека севшего за шахматную доску впервые.

                А бывает, что весьма недалекие люди рассуждают на умные темы. Маструбация для ЧСВ.

                Согласен на все 300% :-)
                  0
                  Странно, почему «интуиция» не просыпается у человека севшего за шахматную доску впервые


                  Интуиция гонщика не появляется у севшего впервые за руль. И интуиция ученого не возникает на первом уроке. Интуитивное понимание людей, не появляется у младенца. Интуитивно притормозил — избежав аварии — чаще происходит с водителем со стажем.

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

                  Согласен на все 300% :-)

                  Были бы согласны, признались бы что зря были радикальны в теме в которой не шарите.

                  Часто слышу людей слабо понимающих шахматы — «Да он все дебюты выучил, его не обыграешь». На самом деле их очень трудно выучить все. Опять же, на какую глубину — на пять ходов или на пятнадцать. Действующие гроссы и претенденты на чемпионство те да, помнят очень много актуальных дебютов, и ходов на 20 иногда. Я например знаю хорошо только три — один ферзевый гамбит и пару, названий которых не помню (у меня на chess.com скромный рейтинг 1600 на 10-ти минутках, 1300 на 2-х минутках с добавлением секунды). Но если умеешь играть, то можешь играть и незнакомый дебют, чуть сложнее, приходится попотеть, и легко угодить в ловушку, но играть можно, и можно даже переиграть. А еще если хочется убрать преимущества запомненных дебютов — есть шахматы Фишера. Там никакая память не поможет.

                  А вы, прежде чем рассуждать зайдите на chess.com поиграйте десятиминутки с пол годика. Шипова на Ютюбе посмотрите ( у него и про AlfaZero есть, намного серьёзнее, чем статья топик стартера). Некоторые партии любого чемпиона (Карлсона, Ботвинника и т.д. на выбор) — в разборе изучите. Задачки мат в три хода порешайте. Тогда уже судите.

                    0
                    Ферзевый — он лав…

                    Я например знаю хорошо только три — один ферзевый гамбит и пару, названий которых не помню

                    Ого, у меня рейтинг (на lichess) ~2050 rapid, ~1950 blitz, я очень много учу дебютную часть, играю последние годы только d4 (очень редко c4) и не могу с уверенностью сказать, что хотя-бы в общих чертах знаю этот (d4) дебют o-O )))
                      0
                      и не могу с уверенностью сказать, что хотя-бы в общих чертах знаю этот

                      Я конечно не имел в виду — досконально знаю, а то, что обычно их играю.

                      играю последние годы только d4

                      Я белыми хожу только e4. А черными в ответ на e4 — c5, а на d4 — d5.

                      Судя по рейтингу (1600 blitz = Lichess 1850 blitz) — с вами одно удовольствие играть, мне нравится когда соперник сильнее. Интересное чувство когда вроде все ходишь правильно, а становится все хуже и хуже.
                        0
                        на d5, в основном, ферзевый (с4) или, гораздо реже, лондонку (bf4).
                        На е4 очень долго не мог определиться, где мне комфортнее (кстати, до сих пор ищу).
                        Сицилианка как-то не по душе, хотя её я знаю не так, чтобы поверхностно. В итоге перебрав множество систем (заодно и расширив свою дебютн. базу) пришёл к трём основным ответам на е4. Это Защита каро-канн (в основном сейчас, e4 — с6), Скандинавская защита (редко, е4 — d5) или Защита Алехина (совсем редко, e4 — Nf6, играю, в основном её только для того, чтобы выбить привычную дебютную почву из-под ног соперника, заодно сканирую его умение разыгрывать дебют. Кстати, Скандиавка выполняет ту-же самую роль. Там такая ситуация, когда белым не надо играть с4, а они играют. Даже нац мастер сыграл против меня с4… ).

                        с вами одно удовольствие играть

                        Мы можем как-нибудь сыграть))

                        Интересное чувство когда вроде все ходишь правильно, а становится все хуже и хуже.

                        Да, особенно, когда хуже не у вас, а у вашего противника))
                      0
                      Вы предлагаете мне потратить пол года жизни на то чтоб стать шахматным задротом? Спасибо, обойдусь.
                      Не примите за оскорбление. То, что Вы шахматный задрот это не плохо. В конце концов каждый из нас тратит кучу времени на бесполезные занятия. Плохо то, что вы своё задротство воспринимаете за признак интеллектуальной продвинутости.
                      По поводу запоминания — у вас крайне странное представление о том, как работает человеческая память. НО если Вам, вдруг станет интересно, то можете оторваться на денёк от ческома и почитать на эту тему статьи.
                        0
                        Не поняли. Я предлагаю вам перестать болтать о том, о чем не имеете представления.
                  0
                  Грубо говоря, если ты знаешь конкретный дебют, а твой соперник нет — ты скорее всего выиграл, без относительно того, умен ты или нет. Можно просто заучить. Машины имеют дебютную библиотеку несравнимую с реальным шахматистом.

                  Машина довольно легко играет и эндшпиль, есть библиотека всех окончаний для любых 7 фигур, где есть мат в 549 ходов. База, кстати говоря, не особо и большая, 16ТБ.

                  И только в миттельшпиле можно пробовать выиграть позицию, так как ее оценка машиной все еще довольно груба. Условно говоря, для машины позиция тем лучше, чем больше полей бьют фигуры.
                    0
                    Грубо говоря, если ты знаешь конкретный дебют, а твой соперник нет — ты скорее всего выиграл, без относительно того, умен ты или нет. Можно просто заучить.

                    Скорее всего нет. Все зависит от уровня. Более сильному шахматисту для победы необязательно знать дебют, который знает более слабый соперник.
                    И только в миттельшпиле можно пробовать выиграть позицию, так как ее оценка машиной все еще довольно груба.

                    Этой грубой оценки достаточно, чтобы разница между сильнейшими шахматистами и машиной на данный момент была примерно такая же, как и между кандидатами в мастера и Чемпионом Мира.
                    Человек уже не соперник для компьютера. Причем, даже без дебютных и эндшпильных библиотек. Причем, даже фора не поможет:
                    2014 — американский гроссмейстер, Хикару Накамура, проиграл мини-матч программе Stockfish 5 со счётом 1-3 (+0=2-2). Две первые партии человек играл с форой в одну пешку, а две последующие без форы, но с использованием подсказок шахматной программы Rybka 3.

                    Можно просто заучить.

                    В шахматах «заучить» недостаточно в любом случае.
                0
                Она умеет мыслить позиционно

                Хотелось бы строгого доказательства, а не голословных заявлений.

                Alpha Zero не использует ничего, кроме правил.

                Т.е. веса в процессе обучения не подстраивались, вот как её запустили так она с изначальным набором весов и работает до сих пор?

                А если подстраивались, то не означает ли это, что благодаря ёмкости своей нейросети alpha zero смогла упаковать значительно больший «справочник дебютов» чем любой составленный человеком, и это позволяет ей лучше оценивать текущую ситуацию используя меньшую глубину поиска, и никакого тактического мышления там нет, просто оптимизированные таблицы решений?
                  –2
                  Она умеет мыслить позиционно

                  Хотелось бы строгого доказательства, а не голословных заявлений.


                  Вы, наверное, пропустили в статье. Вот доказательство:
                  После 20-го хода на доске творится невообразимая стратегическая борьба. Но если нейросеть шаг за шагом минимально укрепляет свою позицию, избавляясь даже от призрачных слабостей, то движок с 24-го по 29-й ход просто топчется на месте ладьёй.
                  Интересно, что Stockfish в упор не видит стратегических решений Alpha Zero, оценивая позицию как абсолютно ничейную. Но в результате минимальных укреплений позиции к 39-му ходу оказывается, что все фигуры белых активны, а чёрный конь и слон занимают пассивную оборонительную позицию. А после размена ферзей и ладей даже Stockfish оценивает преимущество нейросети в +2,2. Ещё несколько ходов – и король черных зажат в углу доски, а конь в одиночку не способен справиться с проходной пешкой. Поэтому программа сдалась.


                  Т.е. веса в процессе обучения не подстраивались, вот как её запустили так она с изначальным набором весов и работает до сих пор?


                  Нет, «Alpha Zero не использует ничего, кроме правил.» — означает, что сетка не использовала ГОТОВЫХ баз партий, окончаний, сеток ценности фигур и т. д. при подстройке весов.
                    0
                    Вот доказательство

                    нет, я всё понял "на доске творится нёх" — это значит что те кто анализируют партию не понимают что в ней происходит


                    сетка не использовала ГОТОВЫХ баз партий

                    как обычно чукча не читатель — чукча минусатор, я где-то сказал про ГОТОВЫЕ базы партий?

                    +2

                    Только это не «справочник дебютов» а «справочник позиций», благодаря которому программа может оценить стоимость любой позиции, причём гораздо более точно чем традиционные алгоритмы. Потому что в традиционных алгоритмах оценка позиций программировалась жестко и заранее — стоимость материала плюс куча эвристик (сдвоенные пешки — штраф, слон в углу — штраф, вот это вот все).


                    AlphaZero училась оценивать позиции сама, на основе миллионов игр. Поэтому она может считать варианты на относительно небольшую глубину. Но правильнее оценивать промежуточные позиции (можно назвать это «интуицией»).


                    По-вашему это принципиально отличается от того как играет человек? Что вы называете «тактическим мышлением»?

                    +1

                    Любая шахматная программа подключается к таблицам Налимова (Ломоносова). В настоящее время они созданы для 7-и (и меньше) фигурных окончаний (короли тоже считаются фигурами) и занимают 140 ТБ.


                    8-и фигурные никто пока даже считать не начал ибо и считать "вечность" и места нужно много-много ПБ :)


                    Смысл этих таблиц — результат просчитан до конца игры и программе не нужно ни времени ни ресурсов для выбора хода.


                    Разумеется против нормальной программы с огромной базой с экспертной оценкой дебютов и подключеной к таблицам Налимова (Ломоносова) у человека нет шансов.

                      0
                      AlphaZero и последующие версии такие как MuZero не базируются на человеческом опыте от слова совсем
                      0
                      Минус алгоритма AlphaZero и глубокого просчёта ходов и позиций, насколько понимаю, в нахождении одного лучшего хода, что позволяет играть с программой перебором различных вариантов, до нахождения последовательности ходов, ведущих к выигрышу человека. Напротив, при поверхностной оценке хода возможно нахождение большего количества равноценных ходов, что может сделать повторную игру менее предсказуемой.

                      Возможно, в чём-то ошибаюсь и не до конца понимаю данные алгоритмы.
                        0

                        АльфаЗеро как раз не считает глубоко. Перечитайте статью

                          0
                          Да, перепутал — имел в виду AlphaBeta.
                        +5

                        Так где же алгоритм Alpha Zero? Ради него и открыл вашу статью, а увидел только воду.

                          +1
                          а сегодня уже создана нейросеть с рейтингом около 5000 Эло, что в разы превосходит даже сильнейших игроков.

                          Рейтинг эло точная оценочная шкала, и если бы нейросеть достигла 5к. она бы выиграла любой шахматный движок (~макс 3.5к Эло) прммерно в 100 партиях из 100 независимо от контроля времени.
                          Но этого не произошло.
                          То что нейросеть не умела играть перед матчем и всего потренила 4-10ч перед игрой — это неагрессивная маркетинговая реклама нейросети в конкретных интересах.

                          Эксперт по искусственному интеллекту Джоанна Брайсон отметила, что «способность Google к хорошей рекламе» ставит его в сильную позицию против претендентов. «Речь идет не только о найме лучших программистов. Это также очень политически, поскольку помогает сделать Google максимально сильным в переговорах с правительствами и регулирующими органами, рассматривающими сектор ИИ».
                          Цитата из Wiki о нейросети


                          Или 2 партии «космос — земля», сыгранные в ничьи — полит.пиар.

                          Вот пиар, который уже сложнее идентифицировать в чьих интересах он вброшен.
                          в шахматы заложен некий код, поскольку в ДНК человека — 64 кодона, столько же, сколько клеток на доске.

                          уникальных комбинаций на шахматной доске больше чем атомов в видимой вселенной
                            0

                            Окей как насчёт боя топового гросса против обычного. У Гросса 1 секунда на ход, у противника 60 минут. Топового гросса при этом мы вырубаем когда ход не его.

                              0

                              Не окей.
                              Как насчет Шахбокса, шахмат Фишера или прочее не относящиеся к равным условиям для расчета Эло.

                            +2
                            Нейросеть использует метод Монте-Карло, который высчитывает математическое ожидание комплекса ходов.

                            Учёный изнасиловал журналиста. Добейте, чтобы не страдал.
                            Описание работы движка, в принципе, содержит те же ключевые слова, но в другом порядке. Смысл передан в корне неверно, особенно это заметно далее. AlphaZero — не "нейросеть", а движок, использующий методы Монте-Карло и нейронные сети.

                              0
                              > Чтобы было более понятно, преимущество в 0,5 пешки – это уже неплохо для шахматиста. В целую пешку – серьёзный перевес. В 3 пешки – подавляющее преимущество, которое можно практически без проблем довести до победы.

                              Это довольно избитая фраза из учебников, которая, как мне кажется, мало отражает действительность. Слишком многое зависит от позиции. Глядя на матчи супер гроссов, которые легко могут отдать (или вернуть) качество или пару пешек за преимуществе в атаке, эта фраза все больше кажется оторванной от жизни.
                                +2
                                Статья исключительно хвалит Alpha Zero, но сейчас ситуация в шахматных движках заметно изменилась. За это время сделали много движков основанных на нейросетях основываясь в начале на статьях разработчиков Alpha Zero, лучшая программа — LCZero (Leela), которая уже работает не на специальных тензорных процессорах, а на обычных видеокартах.

                                Stockfish тоже усилился заметно за эти пару лет, последнее заметное усиление — добавление быстрых сетей на ЦП — NNUE для более точной оценки позиции. Есть все основания полагать, что эти программы уже заметно сильнее той версии Alpha Zero. ИМХО такой гибридный подход с оценкой нейросетями и альфа-бета отсечением вариантов даже ближе к человеческому подходу, и на текущий момент является наиболее эффективным (судя по результам чемпионата TCEC).

                                Сейчас за прогрессом в компьютерных шахматах достаточно интересно наблюдать Alpha Zero резко расшевелил разработчиков, которые используют всевозможные комбинации различных подходов к анализу позиции и вариантов. Прогресс в железе, когда тензорные ядра перестали быть экзотикой тоже добавляет вариантов, и делает итоговые программы работоспособными на обычных компьютерах.

                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                Самое читаемое