Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Основные технологии создания игрового ИИ




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

Первая технология, которая, несмотря на свою простоту, оказывается очень мощной и применяется во многих играх, — это конечные автоматы (finite state machine). Конечные автоматы (FSM) применяются для создания игровых агентов, которые в течение игры могут обладать различным (конечным) числом состояний. Для определения такой системы нужно задать два ключевых элемента: множество состояний и множество правил перехода системы из одного состояния в другое. Состояния имеют вид наподобие: иду, стою, стреляю, бездельничаю и т.д. Правила перехода: если иду и вижу врага, тогда начинаю стрелять; если иду и устал, тогда нужно немного постоять, отдохнуть. Конечные автоматы являются, пожалуй, одной из самых старых и проверенных временем техник создания ИИ, особенно в FPS. Многими любимые Doom, Quake и Wolfenstein, — все имели ИИ, построенный на основе конечных автоматов. Конечные автоматы бывают полностью детерминированными и недетерминированными. Различие состоит в том, что в недетерминированных переходы между состояниями являются не такими жесткими и имеют элемент случайности, непредсказуемости [9].

Есть ситуации, в которых довольно проблемно поведение игрового агента выразить в терминах конечных автоматов. Например, когда из каждого состояния агент может переходить во все другие состояния или когда агент может пребывать в двух состояниях одновременно («идет» и «стреляет»). В таких случаях можно применить другую технологию — систему правил (rule system). Набор заранее заданных алгоритмов определяет поведение игровых объектов. С учетом разнообразия действий конечный результат может быть неявной поведенческой системой, хотя такая система на самом деле вовсе не будет «интеллектуальной». Все поведение агента описывается набором простых правил вида: условие->действие. Сначала выбираем первое правило. Если условие в нем истинно, выполняем указанное действие и выходим (прекращаем проверку последующих условий). В противном случае переходим к следующему правилу, если таковые имеются. На практике системы правил реализуются двумя способами. Первый — дерево принятия решений (decision tree). Другой способ реализации системы правил опирается на скриптовые языки и является более гибким, так как в этом случае вся логика работы ИИ отделена от основного кода движка. Скриптовые системы правил применяются шире всего в стратегических играх, например Age of Empires [9].

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

Следующие технологии более современные и берут свое начало из биологии — совокупности наук о живой природе. Применять генетические алгоритмы в играх начали сравнительно недавно. Они хорошо подходят в ситуациях, в которых нужно создать разнообразие существ, несколько схожих по внешнему виду и/или поведению. Примером тому могут служить пешеходы в гоночных симуляторах или население некого виртуального города/мира (как в GTA или The Sims).

Для того чтобы внести разнообразие в игру и создать более сильного и динамического противника, разработчикам необходимо наделить игровых агентов способностью развиваться, приспосабливаться и адаптироваться. Такое правило активно применяется в боевых и стратегических играх, которые имеют сложную механику и предоставляют большое количество разнообразных возможностей для игровых агентов. Адаптивный искусственный интеллект должен обладать достаточно важным свойством – уметь предсказывать следующий ход противника. Для этого могут применяться различные методы (выявление закономерности прошлых ходов игрока, использование случайных догадок и т.д.) [5].

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

1) на вход системы подают сигналы и результаты, которые нужно получать при таких входах;

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





Поделиться с друзьями:


Дата добавления: 2016-10-30; Мы поможем в написании ваших работ!; просмотров: 867 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Настоящая ответственность бывает только личной. © Фазиль Искандер
==> читать все изречения...

2374 - | 2099 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.