Коммунальная система - Utility system - Wikipedia
В видеоигры AI, а инженерная система, или же утилита AI, это простой, но эффективный способ модели поведения за неигровые персонажи. Используя числа, формулы и баллы для оценки относительной выгоды возможных действий, можно назначить коммунальные услуги для каждого действие. Затем можно выбрать поведение на основе того, какой из них имеет наивысшую «полезность», или используя эти оценки для начального определения распределение вероятностей для взвешенного случайного выбора. В результате персонаж выбирает «лучшее» поведение для данной ситуации на данный момент, основываясь на том, как это поведение определяется математически.
Ключевые идеи
Концепция чего-либо полезность существует на протяжении веков - в основном в математически зависимых областях, таких как экономика. Однако он также использовался в психология, социология, и даже биология. Из-за этого фона и неотъемлемой природы необходимости преобразовывать вещи в математику для компьютерного программирования, это было чем-то естественным как способ проектирования и выражения поведения игровых персонажей.
Естественно, у разных архитектур ИИ есть свои плюсы и минусы. Одним из преимуществ служебного ИИ является то, что он менее «ручной», чем многие другие типы архитектур игрового ИИ.[1] Хотя модели поведения в системе коммунальных услуг часто создаются индивидуально (и вручную), взаимодействия и приоритеты между ними по сути не определены. Например, деревья поведения (BT) требуют, чтобы проектировщик указывал приоритеты в последовательности, чтобы проверить, нужно ли что-то делать. Только если это поведение (или ветвь дерева) НЕ выполняется, система дерева поведения провалится, чтобы проверить следующее.
Для сравнения: поведение во многих коммунальных системах сортируется по приоритету на основе оценок, полученных с помощью любого математического моделирования, которое определяет каждое данное поведение. Из-за этого от разработчика не требуется точно определять, где новое поведение «вписывается» в общую схему того, что может быть тысячами «узлов» поведения в BT. Вместо этого основное внимание уделяется простому определению конкретных причин, по которым конкретное рассматриваемое поведение было бы полезным (т.е. его «полезностью»). Затем система принятия решений оценивает каждое поведение в соответствии с тем, что происходит в мире в данный момент, и выбирает лучшее. Несмотря на то, что необходимо проявлять определенную осторожность, чтобы гарантировать соблюдение стандартов, чтобы при оценке поведения использовались одни и те же или похожие предпосылки, «тяжелая работа» по определению того, как обрабатывать десятки или даже сотни различных вариантов поведения, перекладывается на дизайнера. и поставить в исполнение самой системы.
Фон
Раннее использование
Числа, формулы и оценки десятилетиями использовались в играх для определения поведения. Даже такая простая вещь, как определение установленного процента вероятности того, что что-то произойдет (например, 12% -ный шанс выполнить действие X), была ранним шагом в служебном ИИ. Однако только в начале 21 века этот метод начал приобретать более формализованный подход, который теперь обычно называют «служебный ИИ».
Математическое моделирование поведения
В Симс (2000) текущая «потребность» NPC в чем-либо (например, отдых, еда, социальная активность) была объединена с оценкой объекта или деятельности, которые могли бы удовлетворить ту же потребность. Комбинации этих значений давали оценку действию, которое говорило Симу, что он должен делать. Это был один из первых видимый использование служебного ИИ в игре. Хотя игроки не видели самих вычислений, они были осведомлены об относительных потребностях сима и различной степени удовлетворения, которое могут обеспечить объекты в игре. Фактически, это был основной игровой механизм.
В Симс 3 (2009) Ричард Эванс использовал модифицированную версию Распределение Больцмана выбрать действие для сима, используя температура это низкое значение, когда сим счастлив, и высокое, когда сим делает плохо, чтобы повысить вероятность выбора действия с низкой полезностью.[2] Он также включил в Sims «личности». Это создало своего рода 3-осевую модель, расширяющую числовые «потребности» и «значения удовлетворенности» за счет включения предпочтений, чтобы разные NPC могли реагировать по-разному, чем другие, в одних и тех же обстоятельствах на основе их внутренних желаний и побуждений.
В своей книге Поведенческая математика для игрового ИИ [3]Дэйв Марк подробно описал, как мысленно думать о поведении с точки зрения математики, включая такие вещи, как кривые отклика (преобразование изменяющихся входных переменных в выходные переменные). Он и Кевин Дилл прочли многие из первых лекций по теории полезности на Саммите ИИ ежегодного Конференция разработчиков игр (GDC) в Сан-Франциско, включая «Улучшение моделирования решений ИИ с помощью теории коммунальных услуг» в 2010 году.[4] и «Охват темного искусства математического моделирования в ИИ» в 2012 году.[5] Эти лекции послужили для внедрения служебного ИИ в качестве общепринятой архитектуры наряду с конечными автоматами (FSM), деревьями поведения и планировщиками.
«Коммунальная система»
Хотя работа Ричарда Эванса и последующих программистов ИИ над франшизой Sims, таких как Дэвид «Рез» Грэм[6] были в значительной степени основаны на служебном искусственном интеллекте, Дэйв Марк и его коллега из ArenaNet, Майк Льюис, продолжили лекцию на AI Summit во время GDC 2015 года о полной автономной архитектуре, которую он разработал, Infinite Axis Utility System (IAUS )[7]. IAUS был разработан как управляемая данными, автономная архитектура, которая после подключения к входам и выходам игровой системы не требовала особой поддержки программирования. В некотором смысле это сделало его похожим на деревья поведения и планировщики, в которых механизм рассуждений (принимающий решения) был полностью установлен, и команде разработчиков было предоставлено возможность добавлять поведения в микс по своему усмотрению.
Утилита с другими архитектурами
Кроме того, вместо автономной архитектуры другие люди обсуждали и представляли методы включения вычислений утилит в существующие архитектуры. Билл Меррилл написал отрывок из книги: Игра AI Pro[8]под названием «Встраивание решений коммунальных служб в существующее дерево поведения»[9] с примерами того, как переназначить селекторы в BT для использования математики на основе служебных программ. Это создало мощный гибрид, который сохранил большую часть популярной формальной структуры деревьев поведения, но позволил получить некоторые нехрупкие преимущества, которые предлагала утилита.
Смотрите также
Рекомендации
- ^ Марк, Дэйв (август 2012 г.). «Архитектуры искусственного интеллекта: кулинарное руководство».
- ^ Эванс, Ричард. «Моделирование личности в The Sims 3». GDC Vault. стр. 36–38. Получено 21 сентября 2015.
- ^ Марк, Дэйв (март 2009 г.). «Поведенческая математика для игрового ИИ». Amazon.
- ^ Марк, Дэйв; Дилл, Кевин (2010). «Улучшение моделирования решений ИИ с помощью теории полезности». GDC Vault.
- ^ Марк, Дэйв; Дилл, Кевин (2012). «Освоение темного искусства математического моделирования в ИИ». GDC Vault.
- ^ Грэм, Дэвид «Рез» (сентябрь 2013 г.). «Введение в теорию полезности» (PDF). ИграAIPro.
- ^ Марк, Дэйв; Льюис, Майк (2015). «Создание лучшего кентавра: ИИ в огромных масштабах». GDC Vault.
- ^ Рабин, Стив (сентябрь 2013 г.). «Game AI Pro». Amazon.
- ^ Меррилл, Билл (сентябрь 2013 г.). «Встраивание решений коммунальных служб в существующее дерево поведения» (PDF). ИграAIPro.