Найти тему
shikari

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

Оглавление

Остановилось ли развитие ИИ?

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

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

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

Машина (A) и человек (B) пытаются убедить судью (C), кто есть кто

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

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

Отец искусственного интеллекта в своем лице - Джон Маккарти

-2

В 1956 году американский ученый Джон Маккарти организовал первую в мире конференцию по искусственному интеллекту. Лейтмотивом были возможности создания машины, которая могла бы рассуждать как человек, демонстрировать способность абстрактного мышления, решения проблем и самосовершенствоваться. Джон думал, что каждый аспект обучения или любая другая особенность интеллекта могут быть точно описаны, и, таким образом, построил имитационную машину. Он решил, что прорыв должен произойти через 5-50 лет.

В 1958 году Джон создал свой собственный язык программирования, названный LISP, который стал стандартным языком программирования искусственного интеллекта, и алгоритмы, которые он инициировал, до сих пор используются, включая робототехнику и научное программное обеспечение, и даже в разработке интернет-сервисов (вплоть до обнаружения поддельных кредитных карт для обмана авиакомпаний). Интересно, что LISP также внес свой вклад в разработку методов распознавания голоса, в том числе Apple Siri. Вот почему Джон Маккарти считается отцом искусственного интеллекта. В 1960-х годах он основал лабораторию исследования ИИ в здании Массачусетского технологического института, который и по сей день остается ведущим исследовательским центром в этой области.

История развития ИИ в компьютерных играх

-3

В начале 70-х годов был создан Pong, в котором компьютерный противник мог откидывать мяч, используя прямоугольную платформу. Именно Pong положил начало развитию индустрии компьютерных игр и стал первым проектом, в котором использовались семена искусственного интеллекта. В 1978 году был выпущен Space Invaders, в котором игрок уничтожал встречные волны пришельцев. Игра имела огромный успех во всем мире, а в Японии возникла кратковременная нехватка монет в 100 иен. Она внесла большой вклад в популяризацию компьютерных игр и сделала их мировой индустрией. Эти проекты, однако, не принесли революцию в ИИ. Нам пришлось ждать еще 12 месяцев для большого шага вперед.

-4

Именно тогда был создан Pac-Man от Namco. Хотя используемые в нем алгоритмы искусственного интеллекта были не слишком сложными, все же они были впечатляющими. Съедая больше маленьких шариков, мы должны были следить за максимум четырьмя призраками (монстрами), которые хотели нас поймать. Их режим работы был прост и основан на трех режимах. Изначально спрайт случайно выбирал, куда идти, увидев нас, он мог принять решение последовать за нами или остановить преследование и снова отправиться в случайное место. Когда мы съедали мигающий шар, который пожирал монстра, он знал это и начинал убегать.

Сегодня Pac-Man, включая поведение спрайтов, является предметом многих исследований и испытаний. Также было создано несколько несанкционированных адаптаций, таких как Puck-Man (1980) и Ms. Pac-Man (1981). В немного более новых версиях Pac-Man, поведение призраков было улучшено. Каждый из них также получил имя. Красный, или Блинки, постоянно следует за Pac-Man и ускоряется, когда он ест больше шаров. Так же Тень, потому что она редко перестает преследовать, является главным противником нашего желтого героя. Мизинецили розовый спрайт, обычно атакующий «из засады», пытаясь предсказать движения игрока и быть на шаг впереди него. Блинки часто атакует с двух сторон, так что Pac-Man некуда бежать. Зелено-синий, или Инки, - непредсказуемый призрак, и его тактика зависит от направления, в которое смотрит Пак-Мэн, и от позиции Блинки. Оранжевый, в свою очередь, самый застенчивый, обычно у нас создается впечатление, что он убегает от игрока, и погоня начинается только тогда, когда он достаточно далеко.

После выпуска Pac-Man до 1989 года было не так много событий, которые стоит упомянуть в контексте развития искусственного интеллекта в играх. В 1967 году Ричард Гринблатт создал программу MacHack. Он участвовал в шахматных турнирах и первым обыграл живого соперника. Интересно, что он также был включен в список почетных членов Массачусетской государственной шахматной ассоциации и даже занял 1243-е место в тогдашнем рейтинге лучших шахматистов. В течение почти двух десятилетий подряд появлялись игры, в которых использовались базовые алгоритмы искусственного интеллекта, но они были очень предсказуемы и их чрезвычайно легко побеждать.

-5

В те годы противники в играх могли двигаться очень ограниченно вперед или назад. Чтобы атаковать, им приходилось ждать, пока игрок приблизится к ним. В 1989 году SEGA выпустила игру Golden Axe. Она использовала специальный код, который позволял противникам двигаться к игроку и затем атаковать его. Враги могут также обойти игрока, чтобы ударить сзади. Это был еще один маленький шаг в развитии искусственного интеллекта относительно Pac-Man, выпущенного 10 годами ранее.

-6

В 1994 году мы могли играть в Warcraft, RTS, выпущенный Blizzard. Он использовал, среди прочего Алгоритмы поиска пути, благодаря которым подразделениям под компьютерным управлением удавалось избегать препятствий, а также перемещаться по указанной области и эффективно следовать за противником. Алгоритмы поиска пути были известны гораздо раньше, но Blizzard были первыми, кто применил их к стольким единицам одновременно и, таким образом, совершил небольшую революцию. Warcraft разработал модель игрового процесса, основанную на Dune II (вышедшую в 1992 г.), основой в которой были простые задания «создать базу, создать армию, уничтожить врага». Blizzard также представила новые беспрецедентные типы миссий, такие как завоевание мятежников и сокращение количества единиц, которые могут быть изготовлены. В игре также используется генератор случайных карт (для многопользовательских игр), ранее использовавшийся в пошаговой стратегии Civilization (выпущенной в 1991 году). Warcraft: Orcs & Humans - также первая RTS, в которой действие происходит в Средние века.

-7

Следующий небольшой шаг вперед случился в 1997 году, когда компания Rare выпустила игру GoldenEye 007, в которой применялся алгоритм реагирования врагов при виде выстрела в напарника. После чего они начинали искать убийцу и становились более осторожными.

-8

Три отличных проекта, выпущенных в 1998 году: Half-Life (Valve), Thief: The Dark Project (Looking Game Studios) и Metal Gear Solid (Konami) принесли настоящий прогресс. В каждой из этих игр противников учили работать вместе. В Half-Lifie приходилось сражаться с коммандос, которые могли прикрывать друг друга. Что интересно, хотя только первые двое активно атаковали персонажа, а остальные только симулировали фланкирование.

-9

В Thief приходилось прятаться в тени, и то, видел ли противник фигуру игрока, зависело от степени его укрытия, расстояния от противника и направления, в котором он смотрел. Кроме того, охранники реагировали на звуки и свет. Metal Gear Solid также использовал алгоритмы, позволяющие врагам видеть убитых коллег, эффективно реагировать и информировать других товарищей об опасности.

-10

В 1999 году появилось еще одна крупная компания, которая привела к значительному развитию алгоритмов искусственного интеллекта в играх. Epic Games и Digital Extremes представили FPS Unreal Tournament, в котором боты могли изучать поведение игроков. В результате они знали, где удобно прятаться, и использовали похожие схемы движения. Интересно, что боты из Unreal Tournament 2004 смогли пройти тест Тьюринга в 2012 году после того, как они были перепроектированы для целей турнира BotPrize.

-11

В самом конце 1999 года также появилась Quake 3: Arena, в которой использовались те же предположения алгоритма, что и в Unreal Tournament. Quake- боты также изучили поведение других игроков и смогли разработать лучшую стратегию, чтобы победить своего противника. Их искусственный интеллект проверял последующую тактику, принимая те, которые работали, и отвергая те, которые не работали.

-12

В 2000 году Codemasters выпустили игру Colin McRae Rally 2.0. Это была первая игра, использовавшая нейронную сеть. Искусственный интеллект собирал данные о поездке игрока и определял трек (линию) и модель вождения. ИИ мог определить не только оптимальный маршрут, но также скорость, тип поверхности и параметры, используемые игроком. Алгоритмы, основанные на этих знаниях, пытались имитировать равную борьбу с человеком и со временем становились лучше.

Межличностные отношения, эмоции, способность приобретать новые навыки и даже оценка настроения - игра The Sims 2000 года предложила необычайный искусственный интеллект

-13

В 2000 году компанией Maxis Studios была выпущена революционная игра в области искусственного интеллекта The Sims. Это был первый проект, в котором была внедрена система потребностей. Виртуальные персонажи могут сообщить, что хотят пойти в туалет, принять ванну, что-нибудь поесть или посмотреть программу по телевизору. Они нуждались в развлечениях и любви, они ставили перед собой задачи и использовали оборудование, доступное дома, естественно приспосабливаясь к новым покупкам. Они могли оценить, понравился ли им новый предмет или нет. Интересно, что разработчики не учили симов использовать предметы, и именно предметы говорили им, как их использовать. Изначально The Sims предназначалась как программа для дизайна интерьера, но Уилл Райт решил превратить ее в полноценную игру.

Следующую революцию привнесла игра Black & White, выпущенная в 2001 году, разработанная Питером Молинье и студией Lionhead (как и продолжение, выпущенное в 2005 году). Для нужд имелось существо, которое может научиться правильному поведению на основе поведения игрока. Мы могли его хвалить или критиковать, что сказывалось на многих ситуациях во время игры. Если мы регулярно хвалили знакомого и наказывали его, он не знал, как себя вести, и его поведение становилось хаотичным и непредсказуемым.

-14

Игра Black & White была в свое время очень высокие требования к оборудованию и ряд ошибок, но вошла среди других в Книгу рекордов Гиннесса за сложность ИИ

Хорошо обученное существо очень помогало. Оно могло научиться использовать, например, амбар или тотем. Плохое, в свою очередь, часто спало или возражало против приказов. У него было несколько статистических данных, включая силу, энергию и голод. Его поведение зависело от них, и задача игрока заключалась в том, чтобы направлять существо так, чтобы он не в чем не нуждался. Например, вы должны были научить его поднимать и перемещать валуны и камни, чтобы тренироваться и увеличивать его силу. Игрок, как сверхъестественное существо, должен был постоянно присматривать за ним, чтобы он постоянно развивался. Black & White - это первая игра, в которой искусственный интеллект в реальном времени поглощал знания.

Можно сказать, что Half-Life 2 в некотором смысле имеет все, что нужно найти в идеальном FPS

-15

В ноябре 2004 года вышел долгожданный Half-Life 2, которую многие игроки упоминают как игру с хорошим искусственным интеллектом, хотя разработчики не избежали нескольких багов. Одним из примеров является способ обмануть вашего противника. Для этого достаточно перед атакующим противником схватить любой предмет и нести его впереди себя. Он прекращал стрелять и ждал, пока мы подойдем к нему. Однако, когда мы на мгновение смотрели в другом направлении (все еще удерживая объект), враг возобновлял огонь. Но помимо таких курьезов, производство студии Valve принесло несколько отличных решений. Противники могут взорвать дверь, искать врага, прикрывать друг друга или заходить с фланга. Кроме того, боты кооперировались до такой степени, что придумали разные способы убить игрока. Если первая группа из четырех человек шла с атакой, то последняя, атаковала сзади, и два других оказали поддержку. Враги могут находить укрытие в реальном времени и адаптироваться к меняющейся ситуации. Искусственный интеллект уже в то время выглядел хорошо.

В 2005 году Monolith Studios выпустили FEAR. Игра восхищает атмосферой и продвинутым искусственным интеллектом, который многие считают непревзойденным в играх FPS. В дополнение к уже общепринятым на тот момент способам поведения, таким как затаиваться и стрельба в игрока из-за укрытия, у оппонентов в своем репертуаре была чрезвычайно развитая способность работать в командах. Они могли обойти фланг, использовать гранаты (например, чтобы выгнать нас из укрытия), поддержать своего коллегу огнем, когда он ушел с поля битвы, и даже отправить одного из них в качестве пушечного мяса и атаковать с другой стороны в большей группе.

Интересно, что разработчики не использовали здесь какие-либо специализированные методы кодирования, но они очень хорошо реализовали уже известные алгоритмы. Противники в FEAR имели только три состояния действия: GoTo, Animate и Use Smart Object, и все же они регулярно удивляли. Если игрок увидел перед собой нескольких врагов и сумел убить одного из них, два других, вместо того чтобы стрелять в персонажа, отступали и искали удобную позицию для атаки. Более того, противники в FEAR могут, в случае необходимости, выпрыгнуть из окна, чтобы сохранить собственную шкуру.

-16

Джефф Оркин, старший инженер Monolith, сказал на GDC в 2006 году, что одна из целей при разработке искусственного интеллекта состояла в том, чтобы противники могли заботиться о себе (думать о выживании) и динамически реагировать на события. Если игрок приблизился к трем врагам спереди, двое из них делали все, чтобы сосредоточить свое внимание, в то время как третий искал удобную точку для атаки с правого или левого фланга, что часто заставляло игрока отступать и находить укрытие. Интересно, что оппоненты часто сообщали о своей ситуации по радио, говоря, были ли они способны предпринять какие-либо действия или им некуда бежать. Когда они оказывались в крайне плохой ситуации, они нападали на игрока всеми возможными способами, чтобы остановить его.

FEAR навсегда изменила подход разработчиков игр к искусственному интеллекту и осталась на первом месте в этом плане, и сейчас ей 14 лет.

Так же нельзя пропустить студию Irrational Games и серию игр Bioshock, особенно последнюю часть, с подзаголовком Infinite, выпущенную в 2013 году. Женский персонаж Элизабет, с которым мы взаимодействуем, была очень хорошо продумана. Она не только ищет полезные предметы в данной комнате, но также может бросить нам аптечку, оружие или боеприпасы. Она охотно участвует во всех мероприятиях, предпринимаемых жителями Колумбии. Она бежит за игроком, но у нее есть собственный разум, и вам не нужно беспокоиться о том, что она может застрять где-нибудь. Герой, которым мы управляем, Брукер ДеВитт, устанавливает с ней очень близкие отношения. Главный программист Irrational Games Джон Аберкромби заявил в интервью, что создание Элизабет было самой большой проблемой в его карьере. Вся студия хотела, чтобы она была как можно более человечной.

-17

Действительно, Элизабет обладает своим эмоциональным диапазоном и ей не безразлично, что происходит вокруг нее. Она показывает страх, агрессию и беспокойство, когда кто-то нападает на нас, ценит флору и фауну Колумбии, а также сооружения, с которыми она сталкивается на своем пути. Она тепло отзывается о многих вещах, которые видит, и критикует поведение враждебных групп. У игрока может сложиться впечатление, что этот персонаж на самом деле жив на столько, на сколько позволяет мир Колумбии. Невозможно не любить Элизабет. Особо продвинутые алгоритмы искусственного интеллекта здесь не использовались, но был создан естественный и интересный персонаж.

Конечно, в истории игр было много отличных персонажей. Тот же Тревор из Grand Theft Auto V, Кратос, Макс Пейн, Снейк или Натан Дрейк и Хлоя из серии Uncharted. Тем не менее, не получается вспомнить ни одной игры, которая бы конкретно способствовала развитию искусственного интеллекта за последнее десятилетие. Можно подумать о проектах вроде Splinter Cell (2002), Crysis (2007), Far Cry (2004) и Assassin's Creed (2007), но по-настоящему революционных решений нет. Да, в Splinter Cell враги могли реагировать, когда была активирована сигнализация, что иногда означало конец миссии. В свою очередь, DMA Design в Grand Theft Auto 3 (2001) были первыми, кто представил различные модели поведения и транспорта жителей города в зависимости от времени суток и района. Однако это не было развитой формой искусственного интеллекта, хотя такое разнообразие было очень интересным.

Лучом света стала игра «The last of us», выпущенная в 2013 году, в которой противники могли сотрудничать, окружать игрока и атаковать его, когда у него кончились патроны. Мы могли скрываться, но враги постоянно искали нас, иногда они отступали, а иногда концентрировали свои силы в том месте, где в последний раз видели нас. Их страх был также виден, когда они были одни, или их уверенность, когда у них было несколько компаньонов, чтобы помочь. Они могли реагировать в панике и немедленно атаковать игрока или отступать за укрытие. Игра была отличной с точки зрения атмосферы и сюжета, но мы уже видели похожий ИИ. Тем не менее, стоит признать, что сотрудничество Джоэла и Элли восхищало, хотя последний имел тенденцию уходить под пули, и много раз случалось так, что он умерал, а противники ... они просто не видели этого. Студия Naughty Dog, однако, проделала отличную работу, поэтому TLOU - одна из самых интересных и наиболее реализованных игр последних лет.

Типы алгоритмов ИИ, используемые в играх

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

создать плана действий

решить проблем

стратегически планировать.

Кроме того, существует Алгоритм Aс 1968 г. Его разработали три программиста: Питер Харт, Нильс Нильссон и Бертрам Рафаэль. Обычно он используется для рисования пути данного персонажа из точки A в точку B с использованием сети узлов. Что особенно важно, благодаря ему, персонаж не ищет слепо дорогу, но оценивает направление, в котором он будет идти, а затем устанавливает маршрут и рисует пути, которые по какой-то причине недоступны (например, из-за наличия стены или крутого холма). Однако, как вы можете догадаться, самым большим недостатком этого алгоритма является его полная предсказуемость. Если программист не использует другие приемы, игрок быстро выяснит, в каком направлении движется искусственный интеллект.

Крейг Рейнольдс впервые представил стадный алгоритм в 1987 году в области компьютерной графики. Он дает реалистичное количество определенной группы объектов. Он объединяет несколько простых правил, которые могут имитировать сложные групповые действия, например, те, которые касаются стада птиц, стаи рыб или толпы. Основное предположение состояло в том, чтобы управлять объектами так, чтобы они не сталкивались друг с другом, не следовали в одном направлении и поддерживали безопасное расстояние между ними. Алгоритм был использован, среди прочего в первом Warcraft и Command & Conquer. Со временем его разработали, чтобы дать игроку еще больший контроль над группой, например, в командах у Врат Балдура или Долины Ледяного Ветра,

Metro: Last Light - хороший пример современной игры с искусственным интеллектом, намного хуже, чем в проектах десятилетней давности

Деревья решений - это не что иное, как алгоритмы, которые помогают определить искусственному интеллекту, стоит ли что-то делать. Эти деревья представлены в виде таблицы решений и возможных последствий. Объект анализирует дерево настолько, насколько сочтет нужным, с учетом всех возможных шагов относительно текущей ситуации. В принципе, он выбирает тот, который считает наиболее выгодным. Конечно, этот метод лучше всего подходит для несложного контента (до четырех шагов), но при проектировании более сложного искусственного интеллекта трудно должным образом оптимизировать дерево решений. Этот алгоритм чаще всего используется в сложных RPG, таких как Baldur's Gate.

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

А как вы воспринимаете искусственный интеллект в играх? Что вы ожидаете от новых проектов?