Ситуативный подход (искусственный интеллект)
Ситуативный подход (англ. situated approach) — концепция в исследовании искусственного интеллекта, предполагающая создание агентов, поведение которых фокусируется на успешном взаимодействии с конкретной средой. Такой подход основан на проектировании ИИ «снизу вверх», уделяя приоритетное внимание базовым перцептивным и моторным навыкам, необходимым для выживания, а абстрактному мышлению и навыкам решения задач отводится второстепенная роль[1].
Изначально ситуативный подход был предложен как альтернатива традиционным методам ИИ (популярным до середины 1980-х годов). К тому времени классические технологии столкнулись с неразрешимыми проблемами, в частности, с комбинаторным взрывом при моделировании реальных ситуаций. Все подходы к решению этих проблем основываются на моделировании интеллекта, окружённого и функционирующего в определённой среде; такие подходы сейчас и называются ситуативными.
Появление концепции
В конце 1980-х годов на базе лаборатории искусственного интеллекта MIT под руководством Родни Брукса был заложен фундамент так называемого Nouvelle AI. В отличие от классического искусственного интеллекта, Nouvelle AI сознательно избегал задачи моделирования разума на уровне человека, вместо этого ориентируясь на создание систем с интеллектом, сравнимым по сложности с насекомыми, ближе всего к реальным роботам[2]. Впрочем, впоследствии в MIT на основе идей новой школы появилась попытка создания человекоподобного искусственного интеллекта — проект Cog.
Концептуальный сдвиг, инициированный Nouvelle AI, успешно проявил себя в области робототехники и привёл к формированию поведенческой робототехники (BBR) — методологии, базирующейся на модульном разбиении интеллекта. Наиболее известная реализация — архитектура субсуммирования Родни Брукса, одна из первых попыток формального описания построения BBAI (behavior-based AI). Такой подход оказался крайне успешным для создания динамических систем реального времени, пригодных для сложных сред[3]. Например, эта архитектура использовалась в роботах Sony AIBO и командах RoboCup.
Со временем стало ясно, что все эти направления стремятся не к построению абстрактного интеллекта, а к созданию интеллекта, ситуативно взаимодействующего с конкретной средой. Подобное понимание уходит корнями к ранним работам Алана Тьюринга, который подчёркивал необходимость создания машин, обладающих органами чувств для прямого изучения окружающей среды, в отличие от чисто формальных задач вроде шахмат[4].
Определения
Классически программная сущность определяется как имитируемый элемент, способный воздействовать на себя и свой мир, а также обладающий внутренним представлением себя и внешнего окружения. Такая сущность может взаимодействовать с другими, а её поведение является следствием восприятия, «внутренней модели» и коммуникации.
Имитация сущностей в виртуальной среде требует моделирования полного цикла: от восприятия окружающего мира (или получения внешних стимулов) до действия. Этот процесс носит название цикла ИИ. Технологии для его моделирования делятся на две категории:
- Сенсорно-моторные (низкоуровневые) компоненты: отвечают за восприятие (что воспринимается?) и реализацию действий (как совершить действие?).
- Решающие (высокоуровневые) компоненты: определяют, какое действие выбрать (какое поведение наилучшее в данной ситуации?).
В решающей ИИ существуют два основных подхода. Большинство коммерческих систем (например, алгоритмы планирования, конечный автомат или экспертная система) относятся к традиционному (символическому) искусственному интеллекту. Его признаки:
- Подход сверху вниз: исходная задача рекурсивно разбивается на подзадачи меньшей сложности.
- Знание-ориентированность: опора на символическое описание мира — например, набор правил.
Однако данный подход сталкивается с ограничениями: попытка охватить всё разнообразие окружающего мира приводит к комбинаторному взрыву числа правил. Предсказать все возможные ситуации невозможно.
Чтобы преодолеть эти пределы, выдвинут другой подход — ситуативный (или поведенческий) искусственный интеллект. Он не стремится имитировать процессы дедуктивного мышления, а ориентирован на реалистичные формы поведения агентов в реальной среде:
- Подход снизу вверх: строится на элементарных формах поведения, которые можно комбинировать.
- Поведенческая модель: не использует символического описания, а работает с моделью взаимодействия агента и среды.
Целью ситуативного ИИ является создание автономных агентов, способных приспосабливаться к непредвиденным обстоятельствам благодаря устойчивой архитектуре управления и гибкости поведения.
В искусственном интеллекте и когнитивных науках термин ситуативный агент применяется к агенту, физически включённому в среду. Хотя термин чаще используется применительно к роботам, некоторые исследователи считают, что и программные агенты можно назвать «ситуативными», если:
- они действуют в динамически изменяющейся среде,
- могут воздействовать на среду посредством своих действий,
- способны чувствовать/воспринимать изменения.
В качестве примеров можно привести сетевых агентов, совершающих заказы или изменяющих данные в интернет-пространстве, или виртуальных ботов, действующих в мирах типа Second Life.
Ситуативность обычно рассматривается в рамках концепции воплощённого интеллекта, однако ситуативный и воплощённый подходы могут рассматриваться отдельно. Ситуативный акцентирует, что интеллектуальное поведение возникает благодаря взаимодействию с окружающей средой; характер этих взаимодействий определяется степенью воплощённости агента.
Принципы реализации
Ключевая особенность системы с ситуативным ИИ — модульное управление: интеллект распределён между независимыми полуавтономными модулями. В первых системах каждый модуль мог быть самостоятельным устройством либо выполняться в отдельном потоке. На практике модули чаще имеют статус абстракций. В этом смысле ситуативный ИИ можно рассматривать как вариант программной инженерии, схожий с объектно-ориентированным проектированием.
Нередко ситуативный подход ассоциируется с реактивным планированием, но эти понятия не тождественны. Брукс выступал за крайний вариант когнитивного минимализма, требуя, чтобы модули поведения были конечными автоматами без традиционной памяти и обучения. Это соответствует требованиям реактивных подходов: поведение определяется текущим состоянием мира, а не предшествующим опытом или внутренними ожиданиями. Впоследствии этот жёсткий принцип был смягчён ради достижения «сильного» искусственного интеллекта, допускающего возможности обучения.
В рамках ситуативного ИИ были предложены различные механизмы моделирования процессов принятия решений — так называемые механизмы выбора действия. Классический пример — архитектура субсуммирования[5], изначально представляющая собой больше метод реализации, чем алгоритм. Впоследствии появились другие варианты, например, иерархии свободного потока[6] и сети активаций[7]. Анализы показали преимущество свободнопоточных иерархий при решении задачи выбора действия[8][9]. Другие варианты — схемы управления движением[10] и языки описания процессов[11], которые также показали эффективность для автономных роботов.
Примечания
Литература
- Arsenio, Artur M. Towards an embodied and situated AI. В материалах International FLAIRS conference, 2004. (online)
- The Artificial Life Route To Artificial Intelligence: Building Embodied, Situated Agents, Luc Steels and Rodney Brooks (ред.), Lawrence Erlbaum Publishing, 1995. ISBN 978-0805815184
- Brooks, Rodney A. Cambrian Intelligence (MIT Press, 1999); сборник ранних трудов, включая «Intelligence without representation» и «Intelligence without reason» (1986, 1991).
- Arkin, Ronald C. Behavior-Based Robotics (MIT Press, 1998) ISBN 0-262-01165-4
- Hendriks-Jansen, Horst. Catching Ourselves in the Act: Situated Activity, Interactive Emergence, Evolution, and Human Thought. Cambridge, Mass.: MIT Press, 1996.