Урок 6: Агенты и роевой интеллект
Текст видео

Приветствую вас, друзья. Меня зовут Роман Душкин, и мы начинаем наше шестое занятие по искусственному интеллекту, и это последнее занятие первой недели. Надеюсь, что пока всё очень для вас интересно. Но дальше будет ещё интереснее. Сегодня мы изучим агентный подход в рамках искусственного интеллекта и кратко затронем понятие роевого интеллекта. Так что поехали.

Агентный подход начал прорабатываться с конца XX века, поэтому выделить какое-то ключевое лицо, как это можно было сделать в других подходах, которые мы уже рассмотрели, довольно затруднительно, поскольку над агентами работали многочисленные научные коллективы. Суть подхода очень простая. Вместо того, чтобы пытаться формализовать такие сложные понятия, как «разум»и «интеллект», надо сделать что-то более простое и полезное. Этим простым и полезным оказалось понятие «рациональность» или «рациональное поведение». Хотя, конечно же, и тут всё не так просто. Тем не менее...

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

Теперь расскажу вам, что же это такое. Формализовать рациональное поведение можно различными способами. Проще всего это можно сделать при помощи функции выбора и достижения оптимальной цели с минимизацией затраченных на это ресурсов. Цель обычно можно выразить в числовом виде, но даже качественную цель можно описать формально. Процесс достижения цели определяется разного рода методами оптимизации, которые для многих задач проработаны очень глубоко, а для отдельных аналитически доказана эффективность некоторых методов. И, таким образом, рациональное поведение сводится к решению минимаксной задачи — максимизировать значение целевой функции при минимизации затрат ресурсов. Всё.

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

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

Также агентный подход лежит в основе так называемых многоагентных систем, в рамках которых осуществляется общее целеполагание на более высоком уровне, нежели уровень каждого агента в отдельности. После этого каждому индивидуальному агенту даётся свобода действий в определённых рамках, в которых он имеет возможности и альтернативы по разработке и реализации различных стратегий достижения своей частной цели. В процессе этого агенты взаимодействуют друг с другом и с окружающей средой, обмениваясь информацией и выполняя запросы других агентов. Кроме того, вполне может быть использована идея так называемого «роевого интеллекта», когда каждая отдельная «особь» (то есть агент) интеллектом не обладает, но в целом «рой» (множество агентов, многоагентная система) обладает определёнными интеллектуальными способностями. Это всё сегодня является одним из наиболее перспективных направлений исследований по искусственному интеллекту.

Роевой интеллект — это децентрализованная самоорганизующаяся интеллектуальная система, состоящая из множества агентов. На мета-уровне такой системе ставится цель, и далее каждый автономный агент получает своё собственное задание, решение совокупности которых должно приблизить систему к достижению поставленной цели. Сущность роевого интеллекта заключается в том, что каждый агент сам по себе является очень простым, даже примитивным устройством, в то время как в рамках их взаимодействия рождается сложность и появляется интеллектуальное поведение у всей системы в целом. Общие принципы роевого интеллекта пока ещё только разрабатываются, но на текущий момент уже создано полтора десятка алгоритмов. И это одна из самых динамично развивающихся областей в искусственном интеллекте и робототехнике.

В качестве примера можно рассмотреть пчелиный рой или муравьиную колонию. Как всегда мы берём аналогии у природы, где много уже реализовано в том или ином виде. Каждая пчела, каждый муравей — это довольно примитивные создания, работающие на чистых рефлексах. Взошло Солнце, поднялась температура — метаболизм «заснувшей» пчелы ускорился, у неё появилась возможность летать. Муравей чувствует запах родного муравейника и градиент изменения концентрации феромонов царицы, и по нему ориентируется, куда идти. Но в целом и пчелиный рой, и муравьиная куча показывают очень интеллектуальное поведение. Иногда кажется, что это суперорганизм с сотнями тысячами распределённых тел и децентрализацией, но действующий в рамках одной цели — своего собственного выживания и распространения своих генов, а других мета-целей в природе нет. И, что интересно, на уровне суперорганизма часто показывается такое же поведение, как и на уровне отдельных особей для других видов. Например, и муравьиные колонии, и пчелиные рои в целом могут размножаться делением. Был один рой, разделился на два. Муравьиные кучи рыжих лесных муравьёв Formica rufa, находящиеся по соседству друг от друга, являются родственниками друг другу в буквальном смысле.

Итак, мы изучили ещё один подход в рамках искусственного интеллекта — агентный подход. И он относится к грязной парадигме, так как моделирует поведение интеллектуальных систем на основе моделирования нижележащих элементов, то есть агентов. Этот подход лежит в основе таких актуальных направлений исследований, как многоагентные системы и роевой интеллект. На этом всё, читайте дополнительные материалы и выполняйте домашнее задание. Всем пока, до встречи на следующей неделе.

Дополнительные ссылки:
Популярные вопросы студентов
(Орфография и пунктуация студентов сохранены в большинстве случаев)
Насколько я понял в роевых алгоритмах роль матки отсутствует, хотя в природе матка играет основополагающую роль в том же улье. Если погибает матка, то и погибает улей. Таким образом, если дальше развивать идею суперорганизма, то необходимо вводить роль матки, тогда интеллект системы очень сильно возрастет.
Смотри, пара примеров. Рассмотрим автономные автомобили:
1) Центральная система управления (ЦСУ), которая за каждый автомобиль решает, по какому маршруту ему ехать, чтобы довезти пассажира или груз. Это централизованная система с иерархией.
2) Есть зональные центры, которые могут координировать свои действия на своём уровне, не эскалируя на ЦСУ. И они могут воздействовать на автономные автомобили. При этом последние обладают определённой степенью свободы принятия решений.
3) Автономные автомобили полностью самостоятельно принимают решения и ездят, общаясь друг с другом и элементами инфраструктуры — это децентрализованная схема. Она может быть очень адаптивной, но схемы с ЦСУ обычно более эффективны.

я примерно понял, как происходит обучение ИНС на нормализованных данных (т.е когда есть модель котировки Акции, и на вход ИНС подаются значения многомерного вектора - цена покупки, цена продажи, частота покупок, и др, при этом кол-во входов ИНС соответствует длине вектора - и по результату ИНС определяет, принадлежит ли вектор классу «рост», или классу «падение»). А вот какого типа ИНС умеют находить закономерности между разнородными событиями? Я точно знаю, что есть системы мониторинга, которые по событиям Event log базы данных делают вывод, что в логах веб-сервера скоро появятся определенные события, но никак не могу понять, что же конкретно подаётся на вход ИНС, ведь форматы событий и логов полностью отличаются, да и нет «модели» и векторов, как в первом примере.
Обычно вход ИНС как-то формализуют. Ведь события event log как-то тоже классифицированы? Там не бесконечное разнообразие, ведь так? Ну вот значения классификаторов в том или ином виде и можно подавать на вход нейронам первого слоя. Ведь весь формализм ИНС заключается в преобразовании входного вектора в выходной посредством его умножения на матрицу — всё, другого там на высшем уровне абстракции нет. Другими словами, при постановке задачи для ИНС нам надо каким-то понятным для нас образом закодировать вход и выход в виде векторов, а потом обучить ИНС так, чтобы она настроила матрицу.
Все агенты имеют какую-то маленькую задачу по оптимизации решения одного вопроса? И при ее решении в пределах одного агента это информация передается другому агенту? И так по цепочке, пока не будет выведен самый оптимальный и рациональный вариант решения?
В рамках агентного подхода не накладывается каких-либо ограничений на агентов. Это в общем виде некоторая кибернетическая машина, решающая задачу оптимизации. В процессе этого решения агенты могут общаться друг с другом и обмениваться какой-либо информацией. Ну то есть нет жёсткого алгоритма типа того, который описали Вы. В качестве примера могу привести решение задачи по предоставлению приоритетного проезда общественному транспорту на перекрёстке при помощи агентного подхода. Подвижные единицы — это агенты. Контроллер светофора — это агент. Представьте, что к перекрёстку с конкурирующих направлению подъезжают два автобуса. Они входят в зону доступа контроллера светофора и запрашивают разрешения: один на продление зелёной фазы для себя, а второй на переключение светофора для себя. Контроллер отвечает каждому, что есть конфликт интересов. Тогда они начинают торговаться. Например, первый едет без отставания от графика и в нём находится десяток пассажиров, тогда как второй немного отстаёт от графика, и при этом в нём три десятка пассажиров. Тогда первый говорит контроллеру: «Я готов заплатить за продление фазы 10 условных единиц», а второй говорит: «Я готов заплатить за переключение фазы 60 условных единиц». Контроллер светофора открывает «торги», во время которых автобусы быстро находят равновесие в своих предложениях, и второй автобус получает приоритет — после того как они договорились, контроллер переключает фазу даже если она должна была ещё гореть для первого автобуса. Ну вот как-то так.
У меня вопрос по курсу, про гибридизацию человека и новых технологий. Если я правильно понимаю, эта тема должна опираться на новые технологии и исследования протезирования?
Да, именно на исследования по протезированию и опирается тема гибридизации. Но надо понимать, что протизирование и гибридизация — они двухаспектны. С одной стороны, это именно протезы конечностей и даже внутренних органов. С другой — дополнения в мозг и нервную систему для расширения их возможностей. Эти области очень тесно переплетены, и в их основе лежит нейроинтерфейс. То есть схема примерно такая: протезирование => нейроинтерфейс => киборгизация => гибридизация сознания.
А какие именно интересные технологии и результаты в области нейроинтерфейса, полезные для разработки ИИ были уже получены? И что считается перспективным в этой области?
Собственно, тут, как и во многих вещах, выделяют два магистральных направления, которые можно назвать «инвазивный» и «неинвазивный» нейроинтерфейс. В обоих направлениях много поднаправлений и отдельных технологий, которые сегодня очень много испытываются в разных лабораториях.
1) Инвазивные технологии — некоторое устройство встраивается напрямую в нервную систему и получает сигналы от мозга через биолого-технический интерфейс той или иной природы. Или через такие же интерфейсы оказывает влияние на нервную систему и мозг. Яркие примеры такой технологии — кохлеарный имплант и стимулятор блуждающего нерва.
2) Неинвазивные технологии — «мыслительные процессы» как-то считываются через различные параметры, которые можно измерять без внедрения в тело, а передача сигналов в нервную систему и мозг осуществляется по имеющимся каналам (чаще всего, это иммерсивные технологии, виртуальная и дополненная реальность, либо перевод сигналов недостижимых значений в сигналы той же природы, но из воспринимаемого человеком интервала). Яркий пример — ЭЭГ-монитор, при помощи которого осуществляется управления дронами, экзоскелетом и другими исполнительными устройствами. При этом между ЭЭГ-монитором и исполнительными устройствами стоит ИНС, которая проходит стадию обучения (индивидуальный подбор параметров для каждого конкретного оператора), а потом работает в боевом режиме по обученным весам.

Самостоятельная работа
Задание 1

Прочесть все материалы по ссылкам выше

Задание 2

Сдать проверочный тест
Есть вопросы? Отлично, задавайте!
Предыдущие уроки
Урок №1: ИИ и две зимы здесь
Урок №2: ИИ и междисциплинарные исследования здесь
Урок №3: Две парадигмы здесь
Урок №4: Интуитивный подход и тест Тьюринга здесь
Урок №5: Символьный и логический подходы здесь