0035 - Искусственный интеллект в компьютерных играх: как обучить виртуальные персонажи реагировать на внешние воздействия -

Алекс Дж. Шампандар. Искусственный интеллект в компьютерных играх: как обучить виртуальные персонажи реагировать на внешние возд

 Алекс Дж. Шампандар 
.  Искусственный интеллект в компьютерных играх: как обучить виртуальные персонажи реагировать на внешние воздействия 
. 2007
. 978-5-8459-1170-4
. Вильямс
. 
. В настоящей книге показано, как ввести в компьютерную игру синтетические
Название: 
Искусственный интеллект в компьютерных играх: как обучить виртуальные персонажи реагировать на внешние воздействия
Автор: 
Алекс Дж. Шампандар
Год: 
2007
Издательство: 
Вильямс
Описание: 

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

При этом основное внимание в ходе формализации мы уделяем контексту, входам и выходам . Затем по полученной формальной модели, описывающей программную архитектуру будущей системы, мы должны создать технические задания на разработку соответствующих модулей. Для решения последней задачи существует множество различных методологий, подавляющее большинство которых можно с успехом применить для создания системы ИИ, так сказать . Однако существует и некоторая специфика, связанная с природой систем ИИ, учет которой может существенно упростить задачу разработки техзадании и их реализации в конкретном программном коде. Для этого, в частности, и предназначена теория представления знаний, с основными концепциями которой вы ознакомитесь в следующем разделе. Общие сведения о сути технического проектирования В общем смысле технический проект представляет собой совокупность формальных документов, содержащих окончательные технические решения и дающих полное представление об архитектуре создаваемой системы, образующих ее программных интерфейсах и их логике работы, а также структуре данных, представленных в компьютерных форматах. Тот факт, что эти документы являются формальными, говорит о том, что они были официально утверждены всеми заинтересованными сторонами, а их содержимое приведено в соответствии с другими частями разрабатываемой компьютерной игры. В общем случае технический проект состоит из описания архитектуры и отдельных модулей, технических заданий на разработку этих модулей и плана. В рассматриваемом примере создания подсистемы перемещений технический проект сводится к одному. Можно сказать, что технический проект является . Именно на этапе технического проектирования должны быть приняты окончательные решения относительно выбранных интерфейсов, методов и архитектуры системы. При таком подходе реализация системы в программном коде пройдет в соответствии с намеченным планом и будет выполнена с заданным уровнем качества. Процедурный подход к проектированию системы ИИ При проектировании системы ИИ очень часто бывает полезно рассматривать эту систему в целом или отдельную ее подсистему как некую процедуру или функцию, которой передаются значения определенных параметров и которая возвращает ре Теория представления знаний Теория представления знаний . С фундаментальной точки зрения, задача определения интерфейса также является частным случаем применения ТПЗ. Эту задачу можно сформулировать следующим образом. С формальной точки зрения, представление знаний — это некий . Управление перемещениями Глава . Разработка технического проекта и представление знаний . Это означает, что даже если мы создадим полностью подконтрольный нам виртуальный мир, никогда не сможем предоставить системе ИИ полную, достоверную и исчерпывающую информацию о нем. Таким образом, основная проблема в ТПЗ заключается в том, как обеспечить представление минимального объема информации с минимальными искажениями реальной картины. Для формализации такого представления в ТПЗ используются специальные языки представления знаний . Эти ЯПЗ обладают такой характеристикой, как вырази тельность . При этом информация на этих ЯПЗ может быть представлена как в нотационной форме . задана в виде начальных условий. выводимой на основе имеющихся знаний. Основной же характеристикой ЯПЗ с точки зрения систем ИИ является их эф фективность. Это связано с тем, что на практике всегда приходится искать компромисс между нотационными аспектами . Поскольку описания, создаваемые на ЯПЗ, обладают свойством инференциально сти, этим языкам также присущи такие характеристики обычных языков, как син таксис . Кроме того, ЯПЗ, как и любой другой язык, должен быть целостным . Еще одной характеристикой ЯПЗ является его полнота . Расширяемость . Следует также отметить, что некоторые ЯПЗ более естествен ны . Это означает, что их легче понять или записать в понятной человеку форме при ведении диалога человека с компьютером. Задача разработки интерфейса с точки зрения ТПЗ имеет очень много общего с задачей вывода умозаключения на основе рассуждений. Выбор того или иного представления — это, фактически, онтологическое заключение . Именно такие заключения и накапливаются постепенно, находя свое конечное выражение в архитектурном проекте. Однако при использовании формализованного подхода ТПЗ мы всегда можем перейти от одной формы представления к другой . Поэтому применение концепций ТПЗ на этапе технического проектирования интерфейса дает разработчику гораздо большую свободу, чем использование обычных умозаключений, поскольку мы всегда можем преобразовать формальное представление в вид, который лучше всего подходит для конкретного случая реализации. Формализация представления знаний Итак, как мы уже отмечали, для высокоуровневого представления знаний можно создать специальный язык, с помощью которого обеспечивается формализация такого представления. Поскольку знания могут относиться к самым разным областям, не удивительно, что существует множество различных ЯПЗ. Кроме того, знания могут быть представлены как в виде коротких фраз, так и в виде сложных конструкций, содержащих как фразы на естественном языке, так и математические формулы. Наконец, не следует забывать и о существовании так называемых метазнаний . Конечно, формализация представления знаний — это только высокоуровневая концепция, для практического применения которой необходимо использовать низкоуровневое программирование. Однако описанные ниже формальные представления с успехом можно выразить в виде конструкций языка программирования С. Символы Отдельные факты с точки зрения ТПЗ являются символами . Символ может представлять собой некий объект . Таким образом, в качестве символов можно использовать любой примитивный тип данных .