Искусственный интеллект в видеоиграх - Artificial intelligence in video games

В видеоиграх , искусственный интеллект (AI) используется для создания отзывчивые, адаптивные или интеллектуальные модели поведения , прежде всего , в неигровых персонажей (НПС) , похожие на подобный человеку интеллект. Искусственный интеллект был неотъемлемой частью видеоигр с момента их появления в 1950-х годах. ИИ в видеоиграх - это отдельная область, отличающаяся от академического ИИ. Он служит для улучшения опыта игроков, а не для машинного обучения или принятия решений. В золотой век аркадных видеоигр идея противников ИИ была в значительной степени популяризирована в форме градуированных уровней сложности, различных моделей движения и внутриигровых событий, зависящих от действий игрока. Современные игры часто используют существующие методы, такие как поиск пути и деревья решений, чтобы направлять действия NPC. AI часто используется в механизмах, которые не сразу видны пользователю, таких как интеллектуальный анализ данных и генерация процедурного контента .

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

Обзор

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

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

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

История

Игра в игры была областью исследований ИИ с самого начала. Одним из первых примеров искусственного интеллекта является компьютеризированная игра Ним, созданная в 1951 году и опубликованная в 1952 году. Несмотря на наличие передовых технологий в тот год, когда она была сделана, за 20 лет до Pong , игра приняла форму относительно небольшой коробки и могла чтобы регулярно выигрывать игры даже против высококвалифицированных игроков. В 1951 году, используя машину Ferranti Mark 1 Манчестерского университета , Кристофер Стрейчи написал программу для шашек, а Дитрих Принц - программу для шахмат . Это были одни из первых когда-либо написанных компьютерных программ. Программа шашек Артура Сэмюэля , разработанная в середине 50-х - начале 60-х годов, в конечном итоге достигла достаточных навыков, чтобы бросить вызов респектабельному любителю. Работа по шашкам и шахматам увенчается поражением Каспаровым от IBM «s Deep Blue компьютера в 1997 году Первые видеоигры , разработанные в 1960 - х и начале 1970 - х годов, как Spacewar! , Pong , and Gotcha (1973) были играми, реализованными на дискретной логике и строго основанными на соревновании двух игроков без ИИ.

Игры, в которых был одиночный режим с врагами, начали появляться в 1970-х годах. Первые известные аркады появились в 1974 году: игра Taito Speed ​​Race ( гоночная видеоигра ) и игры Atari Qwak ( стрелок из легкого ружья для охоты на уток ) и Pursuit ( симулятор воздушного боя на истребителе ). Две текстовые компьютерные игры 1972 года, Hunt the Wumpus и Star Trek , также имели врагов. Движение врага основывалось на запомненных шаблонах. Включение микропроцессоров позволило бы большему количеству вычислений и случайных элементов накладывать на модели движения.

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

Именно в золотой век аркадных игр идея противников ИИ получила широкую популярность благодаря успеху Space Invaders (1978), который отличался повышенным уровнем сложности, четкими схемами движения и внутриигровыми событиями, зависящими от хэша. функции, основанные на вводе игрока. Galaxian (1979) добавил более сложные и разнообразные движения противника, в том числе маневры отдельных врагов, которые выходят из строя. Pac-Man (1980) представил модели ИИ в играх-лабиринтах с добавлением причуд различных личностей для каждого врага. Karate Champ (1984) позже представил шаблоны ИИ в файтингах , хотя плохой ИИ побудил к выпуску второй версии. Первая королева (1988) была тактической ролевой игрой, в которой были персонажи, которыми можно управлять с помощью ИИ компьютера, следуя за лидером. В ролевой видеоигре Dragon Quest IV (1990 г.) была представлена ​​система «Тактика», в которой пользователь может настраивать процедуры ИИ неигровых персонажей во время битвы. Эта концепция была позже представлена ​​в жанре ролевой игры компанией Secret of Мана (1993).

Такие игры, как Madden Football , Earl Weaver Baseball и Tony La Russa Baseball, основывали свой ИИ в попытке воспроизвести на компьютере тренерский или управленческий стиль выбранной знаменитости. Мэдден, Уивер и Ла Русса проделали большую работу с этими командами разработчиков игр, чтобы добиться максимальной точности игр. Более поздние спортивные игры позволили пользователям «настраивать» переменные в ИИ для выработки определенной игроком стратегии управления или коучинга.

Появление новых игровых жанров в 1990-х годах побудило использовать формальные инструменты искусственного интеллекта, такие как конечные автоматы . В стратегических играх в реальном времени ИИ, среди прочего, обременяет ИИ множеством объектов, неполной информацией, проблемами поиска пути, решениями в реальном времени и экономическим планированием. Первые игры этого жанра имели печально известные проблемы. Например, Херцог Цвей (1989) имел почти сломанный поиск пути и очень простые машины состояний с тремя состояниями для управления юнитами , а Dune II (1992) атаковал базу игроков в мгновение ока и использовал многочисленные читы. Более поздние игры в этом жанре продемонстрировали более сложный ИИ.

В более поздних играх использовались восходящие методы ИИ, такие как эмерджентное поведение и оценка действий игрока в таких играх, как Creatures или Black & White . Фасад (интерактивная история) был выпущен в 2005 году и использовал интерактивные многосторонние диалоги и ИИ в качестве основного аспекта игры.

Робот идет за мячом и участвует в Робокубке.
Робот идет за мячом и участвует в Робокубке.

Игры предоставили среду для разработки искусственного интеллекта с потенциальными приложениями, выходящими за рамки игрового процесса. Примеры включают Watson , Jeopardy! -играю в компьютер; и турнир RoboCup , где роботов обучают соревноваться в футболе.

Просмотры

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

Растущее понимание разработчиками игр академического ИИ и растущий интерес академического сообщества к компьютерным играм приводят к тому, что определение того, что считается ИИ в игре, становится менее своеобразным . Тем не менее, значительные различия между различными областями применения ИИ означают, что игровой ИИ по-прежнему можно рассматривать как отдельное подполе ИИ. В частности, важное различие составляет способность законно решать некоторые проблемы ИИ в играх с помощью читерства . Например, определение положения невидимого объекта из прошлых наблюдений может быть сложной проблемой, когда ИИ применяется к робототехнике, но в компьютерной игре NPC может просто искать положение в графе игровой сцены . Такой обман может привести к нереалистичному поведению и поэтому не всегда желателен. Но его возможность помогает отличить игровой ИИ и приводит к новым проблемам, которые нужно решить, например, когда и как обмануть.

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

использование

В компьютерных симуляторах настольных игр

В современных видеоиграх

Игровые ИИ / эвристические алгоритмы используются в самых разных областях внутри игры. Наиболее очевидным является контроль над любыми NPC в игре, хотя «скриптинг» ( дерево решений ) в настоящее время является наиболее распространенным средством контроля. Эти рукописные деревья решений часто приводят к «искусственной глупости», такой как повторяющееся поведение, потеря погружения или ненормальное поведение в ситуациях, которые разработчики не планировали.

Поиск пути , еще одно распространенное использование ИИ, широко используется в стратегических играх в реальном времени . Поиск пути - это метод определения того, как переместить NPC из одной точки на карте в другую, принимая во внимание местность, препятствия и, возможно, « туман войны ». В коммерческих видеоиграх часто используется быстрый и простой «поиск пути на основе сетки», когда местность отображается на жесткую сетку из однородных квадратов, а алгоритм поиска пути, такой как A * или IDA * , применяется к сетке. Вместо жесткой сетки некоторые игры используют неправильные многоугольники и собирают навигационную сетку из областей карты, по которым NPC могут ходить. В качестве третьего метода разработчикам иногда удобно вручную выбирать «путевые точки», которые NPC должны использовать для навигации; цена заключается в том, что такие путевые точки могут создавать неестественно выглядящее движение. Кроме того, путевые точки обычно работают хуже, чем навигационные сетки в сложных условиях. Помимо статического поиска пути, навигация - это подполе Game AI, сфокусированная на предоставлении NPC возможности перемещаться в динамической среде, находить путь к цели, избегая столкновений с другими объектами (другими NPC, игроками ...) или сотрудничать с их (групповая навигация). Навигация в динамичных стратегических играх с большим количеством юнитов, таких как Age of Empires (1997) или Civilization V (2010), часто работает плохо; юниты часто мешают другим юнитам.

Вместо того, чтобы улучшать игровой ИИ для правильного решения сложной проблемы в виртуальной среде, зачастую более рентабельно просто изменить сценарий, чтобы сделать его более управляемым. Если поиск пути застревает на конкретном препятствии, разработчик может просто переместить или удалить препятствие. В Half-Life (1998) алгоритм поиска пути иногда не мог найти разумный способ для всех NPC уклониться от брошенной гранаты; вместо того, чтобы позволить NPC попытаться ускользнуть с дороги и рискнуть показаться глупыми, разработчики вместо этого запрограммировали NPC приседать и укрываться на месте в этой ситуации.

Видеоигры боевой AI

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

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

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

Другой побочный эффект боевого ИИ возникает, когда два контролируемых ИИ персонажа сталкиваются друг с другом; Так называемая «борьба монстров», впервые популярная в игре Doom от id Software , может вспыхнуть в определенных ситуациях. В частности, агенты ИИ, которые запрограммированы на ответ на враждебные атаки, иногда атакуют друг друга, если атаки их когорты приземляются слишком близко к ним. В случае с Doom опубликованные руководства по игровому процессу даже предлагают воспользоваться борьбой монстров, чтобы выжить на определенных уровнях и настройках сложности.

Метод поиска по дереву Монте-Карло

Игровой ИИ часто сводится к поиску пути и конечным автоматам. Pathfinding перемещает ИИ из точки A в точку B, обычно самым прямым способом. Конечные автоматы позволяют переходить от одного поведения к другому. Метод поиска по дереву Монте-Карло обеспечивает более увлекательный игровой процесс, создавая дополнительные препятствия для преодоления игроком. MCTS состоит из древовидной диаграммы, на которой ИИ играет в крестики-нолики . В зависимости от результата он выбирает путь, создающий следующее препятствие для игрока. В сложных видеоиграх у этих деревьев может быть больше ветвей, при условии, что игрок может придумать несколько стратегий, чтобы преодолеть препятствие.

Используется в играх за пределами NPC

Академический ИИ может играть роль в игровом ИИ, помимо традиционной заботы о контроле за поведением NPC. Георгиос Н. Яннакакис выделил четыре потенциальных области применения:

  1. Моделирование опыта игрока : определение способностей и эмоционального состояния игрока для соответствующей адаптации игры. Это может включать динамическую балансировку сложности игры , которая заключается в регулировке сложности видеоигры в реальном времени в зависимости от способностей игрока. Игровой ИИ также может помочь определить намерение игрока (например, распознавание жестов ).
  2. Генерация процедурного контента : автоматическое создание элементов игровой среды, таких как условия окружающей среды, уровни и даже музыка. Методы ИИ могут создавать новый контент или интерактивные истории.
  3. Интеллектуальный анализ данных о поведении пользователей: это позволяет разработчикам игр исследовать, как люди используют игру, в какие части они играют больше всего и что заставляет их перестать играть, позволяя разработчикам настраивать игровой процесс или улучшать монетизацию.
  4. Альтернативные подходы к NPC: они включают изменение настройки игры для повышения правдоподобия NPC и изучение социального, а не индивидуального поведения NPC.

Вместо процедурной генерации некоторые исследователи использовали генеративные состязательные сети (GAN) для создания нового контента. В 2018 году исследователи из Корнуоллского университета обучили GAN на тысяче созданных людьми уровней для DOOM (1993); После обучения прототип нейронной сети смог самостоятельно разрабатывать новые игровые уровни. Точно так же исследователи из Калифорнийского университета создали прототип GAN для генерации уровней для Super Mario . В 2020 году Nvidia представила созданный GAN клон Pac-Man ; GAN узнал, как воссоздать игру, просмотрев 50 000 прохождений (в основном сгенерированных ботами).

Обман AI

Геймеры всегда спрашивают, обманывает ли ИИ (предположительно, чтобы они могли пожаловаться, если проиграют)

-  Терри Ли Коулман из Computer Gaming World , 1994 г.

В контексте искусственного интеллекта в видеоиграх мошенничество означает, что программист предоставляет агентам действия и доступ к информации, которая была бы недоступна игроку в той же ситуации. Полагая, что 8-битная Atari не сможет конкурировать с игроком-человеком, Крис Кроуфорд не исправил ошибку в Восточном фронте (1941 г.), которая принесла пользу управляемой компьютером российской стороне. Computer Gaming World в 1994 году сообщил, что «это хорошо известный факт, что многие ИИ« жульничают »(или, по крайней мере,« жульничают »), чтобы не отставать от игроков-людей».

Например, если агенты хотят знать, находится ли игрок поблизости, им могут быть предоставлены сложные, похожие на человека датчики (зрение, слух и т. Д.), Или они могут обмануть, просто запросив у игрового движка позицию игрока. Общие варианты включают в себя повышение скорости ИИ в гоночных играх, чтобы догнать игрока, или создание им выгодных позиций в шутерах от первого лица. Использование читерства в ИИ показывает ограничения искусственно достижимого «интеллекта»; Вообще говоря, в играх, где важна стратегическая креативность, люди могли бы легко победить ИИ после минимума проб и ошибок, если бы не это преимущество. Обман часто применяется по соображениям производительности, где во многих случаях это может считаться приемлемым, если эффект не очевиден для игрока. Хотя читерство относится только к привилегиям, предоставленным специально ИИ - он не включает нечеловеческую скорость и точность, присущие компьютеру - игрок может назвать неотъемлемые преимущества компьютера «обманом», если они приводят к действиям агента, в отличие от игрока-человека. Сид Мейер заявил, что он пропустил многопользовательские союзы в Civilization, потому что он обнаружил, что компьютер почти так же хорош, как и люди, в использовании их, что заставляло игроков думать, что компьютер жульничает. Разработчики говорят, что большинство из них честны, но им не нравятся игроки, ошибочно жалующиеся на «читерский» ИИ. Вдобавок люди используют тактику против компьютеров, которую они не использовали бы против других людей.

Примеры

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

Шутер от первого лица , где игрок берет на себя роль Master Chief, сражаясь различными иностранцами , пешком или в транспортных средствах. Враги очень разумно используют укрытия, применяют подавляющий огонь и гранаты. Ситуация с отрядом влияет на людей, поэтому некоторые враги убегают, когда их лидер умирает. Большое внимание уделяется мелким деталям: враги бросают гранаты назад или члены команды реагируют на то, что вы им мешаете. Базовая технология «дерева поведения» стала очень популярной в игровой индустрии (особенно после Halo 2 ).

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

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

Стратегия в реальном времени игра , где игрок берет на себя управление одной из трех фракций в 1v1, 2v2, 3v3 или боевой арене. Игрок должен победить своих противников, уничтожив все их отряды и базы. Это достигается путем создания юнитов, которые эффективно противостоят юнитам ваших оппонентов. Игроки могут играть против нескольких разных уровней сложности AI, от очень простого до Cheater 3 (безумный). ИИ может обмануть на сложности Cheater 1 (видение), где он может видеть юниты и базы, когда игрок в такой же ситуации не может. Cheater 2 дает ИИ дополнительные ресурсы, а Cheater 3 дает значительное преимущество перед противником.

Смотрите также

Списки

использованная литература

Библиография

внешние ссылки