Назад в библиотеку

Интеллектуальные системы в компьютерных играх. Перспективы развития искусственного интеллекта в игровой индустрии

Автор: Буковин В.А.
Источник:Интеллектуальные системы в компьютерных играх. Перспективы развития искусственного интеллекта в игровой индустрии

Аннотация

Буковин В.А. - Интеллектуальные системы в компьютерных играх. Перспективы развития искусственного интеллекта в игровой индустрии

Общая постановка проблемы

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

Введение

Мировой рынок медиапотребления стремительно меняется, телевидение всячески вытесняется увлекательными интернет-технологиями и компьютерными играми. По статистическим данным число игроков в компьютерные игры на территории России составляет примерно 46 миллионов человек [7], а продажи видеоигр тем временем затмевают суммарные сборы какого-нибудь всеми ожидаемого блокбастера в кинотеатрах. И правда, за последние 20-30 лет игры кардинально изменились, пройдя путь от смехотворных игровых автоматов в магазинах до сложных компьютерных систем, вычислительной мощности которых зачастую не хватает для системных требований игры. Рост технологических возможностей и интереса к игровой индустрии делает область интерактивных развлечений самой быстро развивающейся областью информационных технологий в мире. За прошедшие шесть лет суммарные продажи игровых консолей текущего поколения, таких известных устройств, как Playstaion 4, XBOX ONE и Nintendo Switch, составили приблизительно 130 млн. копий [6]. Но компьютерные игры не всегда были такими успешными и популярными. Игровая индустрия изменилась с приходом персонального компьютера и возможности сделать что-то большее, чем игровой автомат на улице или безамбиционную игрушку в руках у ребенка. Знаменательным событием для игровой индустрии стал выход таких игр, как: Black&White (Lionhead Studios Inc., 2001), Creatures (Cyberlife Technology Inc., 1996), Goldeneye (Rare Inc., 1997) и Halo (Bungie Studios Inc., 2001), которые закладывают основы для появления целых игровых жанров и определяют дальнейшее направление развития компьютерных игр. Можно сказать, что на данный момент компьютерные игры – не просто фрагменты кода, а удачно аккумулированные методы выразительности и передачи информации, совокупность визуальной составляющей, которая представлена довольно развитыми технологиями компьютерной графики и визуализации анимационных эффектов, музыкального сопровождения и применения средств искусственного интеллекта

Подходы к определению понятия "игровой искусственный интеллект"

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

Так или иначе, необходимо привести очевидный пример, чтобы показать, выдерживают ли принципы «хорошего» ИИИ применение к частному случаю. Таким примером станет серия приключенческих компьютерных игр, основанных на комиксах о Бэтмене, темном рыцаре, защитнике и покровителе своего родного Готэм-сити, Batman: Arkham series, разработкой которой занимались Rocksteady Studios и Warner Bros. Games Montreal. В играх серии всегда присутствовал отличный сюжет с элементами детектива, достаточно неплохая боевая система, значительную роль в которой играл искусственный интеллект неигровых персонажей, заключенных тюрьмы Blackgate, которые всячески останавливали главного героя. Cфокусируемся на скрытной (англ. Stealth) составляющей серии, прохождению ограниченных пространств с преодолением группы вооруженных противников. Такие моменты прекрасно демонстрируют взаимодействие игрока с ИИИ и достаточную вариативность действий, которые может предпринять игрок в определенных обстоятельствах. Противники разбиты по нескольким, определенным разработчиками, зонам и патрулируют их различные области, вашей же целью остается обезвредить эту группу противников любыми доступными способами. По мере того, как вы один за другим будете выводить их из строя, оставшиеся персонажи проверят последнюю позицию обезвреженного вами противника, а увидев своего товарища без сознания, непременно отреагируют, поднимут тревогу и проинформируют остальных – видим отчетливые признаки того, что ИИИ реагирует на действия игрока. Теперь противники находятся в встревоженном состоянии, их цель проверить каждый уголок, каждый уступ, каждый метр вентиляции, в которых вы могли бы укрыться: теперь они будут заходить в различные комнаты, поднимать крышки вентиляций и прикрывать друг друга – на лицо взаимодействие ИИИ с остальными частями игровой системы. Все это время противники переговариваются между собой, используя рацию, вы же, прослушивая их частоту, можете узнать о намерениях противника и спланировать свои дальнейшие действия – в этом смысле ИИИ постоянно информирует игрока, становится более предсказуемым, дает ему большую вариативность и свободу действий. Но не стоит забывать и об условностях, которые допустили разработчики, например, о том, что противники волшебным образом не оборачиваются, когда вы решили подкрасться к ним сзади и обезвредить их – вот, где игроку и предоставляют больше возможностей, именно те моменты, отсутствие которых могло негативно сказаться на впечатлениях от игры. Все эти особенности позволяют действительно погрузиться в игровой процесс и испытать удовольствие от взаимодействия с ИИИ. Очевидно, что частный случай не может дать нам гарантию выполнения всех этих принципов в каждой компьютерной игре, но можно с уверенностью сказать, что, если ИИИ всегда бросает вам все новые и новые вызовы, преподносит более изощренные испытания, он несомненно будет отвечать требованиям, описанным выше. ИИИ делится на периферийный и центральный ИИ. Необходимость в этом очевидна. Во-первых, игра должна реагировать не только на действия игрока, но и на изменения в виртуальном мире, за что отвечает периферийный ИИ. Во-вторых, в зависимости от действий игрока или обстоятельств и состояния виртуального мира персонажи должны принимать определенные решения, за что отвечает центральный ИИ. В-третьих, все эти изменения должны иметь свое место на экране в виде визуальных анимаций, озвучивания и т.п. И наконец, при необходимости многие из этих аспектов могут быть жестко определены («заскриптованы») заранее разработчиком.

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

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

Настоящая статья была бы неполной, если бы в ней не упоминались довольно амбициозные системы планирования (англ. Goal-Oriented behaviour), признаки которых стали появляться в некоторых компьютерных играх 2005-2010 гг. Данный подход базируется на очень простой идее – сделать поведение персонажей более естественными, определив их цели, мотивацию и соответствующие действия.

Выводы

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

Список использованной литературы


1. Шампандар А.Д. Искусственный интеллект в компьютерных играх: как обучить виртуальные персонажи реагировать на внешние воздействия. : Пер. с англ. – М. : ООО «И.Д. Вильямс», 2007. – 768 с.
2. Millington, Ian Artificial intelligence for games / Ian Millington, John Funge. – 2nd ed. – 895 с.
3. Woodcock St. Game AI: The state of the industry [Электронный ресурс]. – 1998. – Режим доступа: http://www.gamasutra.com/view/feature/131705/game_ai_the_state_of_the_industry.php
4. Элементы игрового ИИ на основе табличной логики и Марковских цепей [Электронный ресурс]. – 2012. – Режим доступа: http://www.gamedev.ru/ code/ articles/Markov_chain_AI
5. Казунов В. S.T.A.L.K.E.R.: Чистое небо – интервью о проблемах выживания искусственного интеллекта в Чернобыльской зоне [Электронный ресурс]. – 2008. – Режим доступа: http://www.gametech.ru/cgi-bin/show.pl?option=article&id=85
6. Playstation 4 vs Xbox One: какая консоль продается лучше? [Электронный ресурс]. – 2016. – Режим доступа: http://ichip.ru/playstation-4-vs-xbox-one-kto-lider-prodazh.html
7. Грэй С. Свежая статистика о российских геймерах [Электронный ресурс]. – 2013. – Режим доступа: https://hi-news.ru/research-development/svezhaya- statistika- orossijskix-gejmerax.html