Восстание машин. Как боты OpenAI Five обыграли сборную человечества
Яна Медведева
Комментарии
Эти боты учатся ставить варды, драфтить и открывают новые фишки в Dota 2. Даже пока ты читаешь этот текст.

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

В начале разработки боты бесцельно ходили по карте, оценивая ситуацию. У них не было никаких предустновок о возможных действиях и их последствиях. Через несколько часов экспериментов они узнали о том, что такое фарм и линии. Три месяца назад они с трудом боролись против команд средней руки. Теперь OpenAI Five поднялись на уровень игроков с 6,5k MMR. И всё это результат машинного обучения.

Материалы по теме
Боты выносят людей в доту. OpenAI представила командный ИИ
Боты выносят людей в доту. OpenAI представила командный ИИ

Прошедшей ночью в Сан-Франциско состоялось событие научного и игрового масштаба. OpenAI Five сыграла против Team Human — игроков и комментаторов Dota 2 с опытом выступления на про-сцене. И одержала легчайшую победу в двух картах. Человечеству удалось отомстить только в заключительной третьей игре, когда для ботов зрители специально выбрали слабых героев. И даже с этим условием OpenAI дали неплохой отпор сборной игроков и кастеров.

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

Как Open AI побеждают

Они умело драфтят

Когда сотрудники OpenAI представили свою разработку, боты получали героев рандомом. Предполагалось, что и шоу-матч пройдет в таком же формате. Однако теперь искусственный интеллект научился простейшему формату драфта из изученных 18 героев. Исходя из огромного массива данных о сыгранных матчах, OpenAI оценивает вероятность победы с тем или иным персонажем в своем и вражеском пике. Например, в первых картах против Team Human искусственный интеллект оценивал шанс победы в ориентировочно 80%. А в третьей карте, где героев для OpenAI выбирали зрители, вероятность упала ниже 3%.

Примерно так выглядит оценка вероятностей ботом. Смотрите, как люди ошиблись, выбрав Shadow Fiend.

Как объяснили разработчики, основное преимущество драфта от OpenAI в том, что они намного лучше знают свой пул героев. К тому же их мета в рамках текущего патча и этих 18 персонажей ушла намного дальше, чем могут себе представить люди, потому что у них за спиной миллионы игр.

Они доминируют на одной линии

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

В матче с неудачным драфтом они пожертвовали своей легкой линией и вчетвером отправились вниз, чтобы разобраться с самой легкой целью и быстро уничтожить первую башню. Такой старт игры позволил им увеличить шанс на победу с 3 до 5 процентов.

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

Они «абузят» курьеров

Одним из отличий доты OpenAI от настоящей игры стали особые правила использования курьеров. У каждого игрока есть собственный курьер, который неуязвим к атакам. И боты быстро научились пользоваться преимуществами этой детали.

Главная стратегия OpenAI Five — это пуш. Где-то на седьмой минуте они уже собираются впятером и методично сносят вышки, подлавливая всех, кто пытается защитить строения. Чтобы не возвращаться на базу или к святилищам, они носят себе Healing Salve и Clarity. Так они поддерживают высокий уровень здоровья и маны, даже если постоянно дерутся и танкуют башни без крипов.

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

Они умеют играть 4+1

Однако не стоит думать, что стратегия ботов упирается исключительно в пуш всей командой. Они умеют распределяться по карте и наращивать преимущество. Например, во второй игре Open AI Five четко разделились: четыре героя уничтожали верхнюю линию, а Gyrocopter несколько раз приходил во вражеский лес внизу. Там-то его и находили Team Human, заметившие отсутствие вражеского керри.

Они мастерски сплит-пушат

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

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

Когда Team Human решили пойти в трон, снеся мид, боты бросились атаковать строения на их базе. То ли пытались разменяться, то ли выманить соперника.

В любом случае благодаря сплит-пушу и постоянным перемещениям боты явно выиграли себе лишних 10 минут на покупку артефактов.

У них нечеловеческая реакция

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

Например, ситуация во время обороны вражеской базы в первой карте. Earthshaker впрыгнул в толпу соперников и получил Hex ещё до того, как успел использовать ультимейт.

Дело не только в том, что боты реагируют быстрее. Им не нужно время, чтобы навести курсор и нажать клавишу, ведь OpenAI взаимодействует с игрой напрямую. Как в этой ситуации действует человек? Сначала он замечает вражеского персонажа (стандартное время реакции 200+ms), затем передвигает мышку, потом нажимает на кнопку. Последние два действия также отнимают драгоценное время. Боту же нужно только заметить цель, чтобы отдать команду.

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

Они уже научились интересным фишкам

Разработчики часто рассказывают об одном маневре, которому боты случайно научились во время тренировочных матчей. Так как они очень любят залезть под вражескую вышку за лишним киллом, искусственный интеллект нашел способ уменьшить урон от башни: боты ставят перед вышкой сентри-вард. В итоге строение тратит удары на этот объект, а крипы проскальзывают вперед. Этот трюк OpenAI Five использовали и в матче против зрителей шоу-матча.

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

Они умеют в трешток

Вас когда-нибудь унижали боты? А OpenAI могут. Например, на старте игры они могут написать, что вероятность победы их команды составляет 95%.

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

Что у ботов выходит плохо

Они очень странно вардят

Варды в обиходе ботов появились совсем недавно. Еще во время выпуска первого блога об успехах разработчиков искусственный интеллект не использовал такие преимущества. Так что пока вардинг выглядит как минимум сомнительно и странно. Боты могут воткнуть два обса практически в одну точку или заставить определённую область сентри. Однако классические точки для вардов на средней линии и возвышенностях они уже изучили.

«Когда речь заходит о добивании крипов, изменить эффективность просто: больше добил крипов — дольше выживаешь в драке. С вардингом все не так просто. Сложно дать понять, от чего именно они получили преимущество. Может, это обзор, может, это убийства. Так что мы просто дали ботам возможность использовать варды и поставили такой эксперимент.

Мы заскриптовали покупку вардов, но иногда они ценят их меньше, чем другие предметы. Так что они могут просто поставить вард, чтобы освободить слот под новый артефакт — это одно из объяснений. Ну, или они могли ещё не научиться их использовать. Мы точно не знаем — пояснил один из разработчиков Шимон Сидор.

Они используют смоки не по назначению

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

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

Они собирают предметы по гайдам

Пока боты не придумывают свои сборки и не ориентируются по ситуации. Их билды загружены из гайдов Torte, который обновляет их с каждым патчем. Научить OpenAI самостоятельно выбирать артефакты и покупать предметы по ситуации — это главная задача разработчиков перед шоу-матчем на The International 8. Главное, чтобы они окончательно не увлеклись всем, что способно пополнять здоровье ради пуша.

Они испытывают трудности в поздней стадии

Open AI пока теряется в поздней стадии игры. Как объяснил один из разработчиков, до этого момента игра чаще всего не доходит.

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

На поздней стадии боты могут странно метаться по карте и копить деньги, не понимая, как их использовать. Если соперник спрячется на базе, Open AI тоже собьется с курса и стратегии. Просто этим ребятам нужно больше практики. Например, поиграть против Fnatic. EternalEnvy может им показать, что такое поздняя стадия.

«Мы отдельно просматриваем длинные игры, чтобы отметить эти детали. Например, мы можем заметить, что они застряли из-за какого-то странного поведения. В итоге мы решаем, что мы можем сделать, чтобы улучшить процесс обучения, чтобы подобные ситуации не повторялись», — объяснил разработчик Джи Тан, когда речь зашла о способах решения подобных проблем.

Они не ценят Рошана

Ещё одно недавнее нововведение для ботов — это появление Рошана на карте. Правда, в большинстве случаев они пока просто заходят в пещеру посмотреть на камнеголового, а потом уходят по своим делам.

Если задуматься о том, как научить ботов убивать Рошана, то встаёт вопрос: как вообще сделать это возможным? Чтобы забрать Рошана, им нужно зайти в логово, скоординироваться, использовать способности и убить существо с 6000 жизней. Как ботам вообще понять, что это возможно? Самый простой ответ: они не будут этого делать. Потому что невозможно создать ситуацию, когда они случайно убивают Рошана. Тогда мы внесли элемент рандома и стартовый показатель здоровья Рошана стал случайным. Тогда они могут встретиться с Рошаном со 100 здоровья, убить его с одного удара, взять Аэгис и понять, что это крутая штука. Поэтому уже сейчас в играх мы видим, как боты иногда заходят в рошпит и смотрят на Рошана, чтобы проверить, может, в этот раз у него мало здоровья, — рассказал о процессе обучения Сидор.

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

Они не используют призываемых юнитов и иллюзии

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

«Есть некоторые технические ограничения, которые мы преодолеваем одно за другим. Иллюзии — это одна из них. Но в то же время, мы не хотим, чтобы у ботов развивалась микро-мета. Потому что они в любом случае делают это успешнее, потому что у них лучше скорость реакции и им намного проще контролировать несколько юнитов. Ты не хочешь играть в игру, в которой боты изначально используют юнитов лучше тебя. Мы хотим, чтобы это все еще было о стратегии, выборах, которые делает OpenAI», — объяснил член команды разработчиков Хенрик Понде.

Зачем вообще это нужно?

На самом деле, OpenAI Five — это не просто развлечение ради создания умных ботов в доте. У разработчиков намного более серьёзные задачи. Во-первых, они постоянно занимаются совершенствованием машинного обучения, ускоряя тренировочный процесс. На данный момент в день бот проводит такое количество матчей, которое эквивалентно 180 годам игрового опыта. Одна из целей OpenAI — ускорить этот процесс в полтора раза.

Во-вторых, полученные алгоритмы разработок можно будет применить не только в компьютерных играх.

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

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

Ну а Dota Team пока занята тем, чтобы отполировать свое игровое творение. Потому что уже на The International их команду ботов ждет испытание настоящей профессиональной командой, которая уже видела их в деле. К тому времени у искусственного интеллекта накопится еще пара тысяч лет игрового опыта и, может быть, они научатся использовать дасты.

И помните, пока вы спите, OpenAI Five катает в доту.

Комментарии