Как нейросеть научить играть в игры

0
11

Самый умный: как нейросети пытаются обмануть игры⁠⁠

Правила сообщества

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

Для тренировки нейросети использовался метод обучения с подкреплением (reinforcement learning, RL). Сеть обучалась полностью самостоятельно, проводя тысячи партий против самой себя (потребовалось более 700 тысяч игр) и получая «вознаграждения» за действия, приводящие к выигрышу. Таким образом AlphaZero училась на собственных ошибках, корректируя параметры нейронной сети, чтобы принимать верные решения в последующих играх.

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

Чтобы исправить эту несправедливость, группа энтузиастов в 2018 году создала аналог AlphaZero, во многом повторяющий принципы работы этой программы, изложенные в научных статьях. Разработанный ими бесплатный шахматный движок с открытым исходным кодом был назван Leela Chess Zero.

Современные нейронные сети настолько продвинуты, что могут уверенно обыгрывать людей практически во все культовые настолки. Время соперничества человека с ИИ прошло — теперь игроки-люди, учёные и программисты совместными усилиями пытаются наладить сотрудничество с нейросетями.

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

Ошибаться тоже надо уметь

На самом деле нейросеть Maia работает поразительно эффективно, поскольку в каждый момент времени шахматист в среднем выбирает один ход из 35 возможных вариантов. Лучшие из существовавших до неё программ могли предугадать человеческие действия на шахматной доске только в 35–40% случаев.

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

ЧИТАТЬ ТАКЖЕ:  Нейросеть кто создает

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

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

Как и в AlphaZero, в Leela Chess Zero программно заложены только правила игры, и на старте нейросеть больше ничего не знает. Leela Chess Zero обучается в распределённой вычислительной сети, координируемой на веб-сайте проекта. В течение первых нескольких месяцев Leela провела против самой себя более 23 миллионов игр, достигла уровня гроссмейстера и продолжила повышать своё мастерство.

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

В этом примере нейросети Maia с уровнем Эло 1100–1400 предсказывают, что белые сделают заманчивый, но стратегически неверный ход b6. Напротив, версии Maia с уровнем Эло 1500–1900 прогнозируют, что в той же ситуации игроки с рейтингом 1500 и выше совершат хитрый ход bxa6, вынуждая противника оголить ферзевый фланг
Инфографика: Maia Chess

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

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь