Мультиагентные вычисления простыми словами

Недавно я столкнулся с термином «мультиагентные вычисления» и не совсем понимаю, что это такое. Я читал об этом книгу, но она не ответила на фундаментальный вопрос, что такое агент.

Есть ли у кого-нибудь ссылка на какую-то ссылку, которая ясна и кратка и отвечает на вопрос без кучи чуши/маркетинга? Я хочу знать, стоит ли мне с этим ознакомиться, или это какая-то хрень, которую я, вероятно, могу проигнорировать, потому что я, честно говоря, не могу сказать.


person Rob    schedule 30.08.2008    source источник


Ответы (8)


Проще говоря, мультиагентное исследование пытается разработать систему, состоящую из автономных агентов. То есть у вас есть куча роботов/людей/программных агентов, каждый из которых может выполнять свои действия, но может только «видеть» то, что находится вокруг него, как заставить систему вести себя так, как вы хотите?

Пример,

Имея кучу роботов с ограниченными сенсорными возможностями, как заставить их следить за полем в поисках врагов? найти все мины в поле?

Учитывая группу людей, как заставить их максимизировать счастье наименее счастливого человека? не лишая их свободы.

Учитывая группу людей, как вы устанавливаете время встречи, которое максимизирует их счастье? не раскрывая свою личную информацию?

Некоторые из этих вопросов могут показаться очень простыми для решения, но это не так.

Мультиагентные исследования смешивают методы теории игр, экономики, искусственного интеллекта и иногда даже биологии, чтобы ответить на эти вопросы.

Если вам нужны подробности, у меня есть бесплатный учебник, над которым я работаю, он называется Основы мультиагентных систем.

person Jose M Vidal    schedule 05.02.2009

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

person Kyle Cronin    schedule 30.08.2008

«Агенты» — это еще одна абстракция в разработке программного обеспечения.
Как грубая иерархия;
Машинный код, ассемблер, машинно-независимые языки, подпрограммы, процедуры, абстрактные типы данных, объекты и, наконец, агенты.

Поскольку взаимосвязь и распределение становятся все более важными в вычислительной технике, потребность в системах, которые могут сотрудничать и достигать соглашений с другими системами (с другими интересами) становится очевидным; здесь на помощь приходят агенты. Агенты, действующие независимо, представляют ваши интересы в своей среде.

Другие примеры агентов:

  • Управление космическим кораблем для принятия быстрых решений, когда нет времени на обмен сообщениями между кораблем и наземным экипажем (например, Deep Пробел 1)
  • Управление воздушным движением (системы игнорируют пилотов; это используется на большинстве коммерческих рейсов и спасает жизни)

Многоагентные системы связаны с;

  • экономика
  • Теория игры
  • Логика
  • Философия
  • Социальные науки

Я не думаю, что агенты - это то, что вам следует приукрашивать. 2 миллиона посещений в Google Scholar по запросу "несколько агентов" и < href="http://citeseer.ist.psu.edu/cs?q=multi+agent&ao=Citations" rel="nofollow noreferrer">подробнее о CiteSeer; это быстро развивающаяся отрасль информатики.

person RJFalconer    schedule 17.10.2008

Есть несколько ключевых аспектов многоагентных вычислений, среди них распределение и независимость.

Мультиагенты не обязательно должны находиться на разных машинах, они могут, как говорит @Kyle, быть несколькими процессами на одном чипе или машине, но они действуют без явного централизованного управления. Они могут действовать согласованно, поэтому у них есть определенные правила синхронизации — например, выполнение своей работы по отдельности перед тем, как собраться вместе для сравнения результатов.

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

‹широкое обобщение› Можно ли это игнорировать? Ну, на самом деле это не что-то конкретное, так что это немного похоже на «могу ли я игнорировать концепцию быстрой сортировки?» Если вы не понимаете, что такое быстрая сортировка, вы не перестанете быть разработчиком, потому что большая часть вашей жизни совершенно не пострадает. Если вы лучше разбираетесь в различных архитектурах и моделях, у вас будет больше знаний для развертывания в новых и непредсказуемых местах. ‹широкое обобщение›

Десять лет назад «мультиагентные системы» (MAS) были одним из тех словосочетаний, которые повсеместно встречались в академической литературе. В наши дни он менее распространен, но некоторые идеи, которые он представляет, действительно полезны в некоторых местах. Но совершенно ненужным в других. Так что надеюсь понятно ;)

person Unsliced    schedule 30.08.2008

Трудно сказать, что такое мультиагентные вычисления, потому что определение агента обычно очень мягкое, окруженное терминами маркировки и т. д. Я попытаюсь объяснить, что это такое и где его можно использовать, основываясь на исследованиях производственных систем. , то есть область, с которой я знаком.

Одной из «нерешенных» проблем современного производства является планирование. Когда постановка задачи статична, можно найти оптимальное решение, но в действительности люди не выходят на работу, отказывают производственные ресурсы, выходят из строя компьютеры и т. д. Спрос все время меняется, требуются разные продукты (т.е. массовая кастомизация продукта - в одной произведенной машине есть кондиционер, в другой нет, ...). Все это приводит к выводам, что а) производство очень сложное, б) статические подходы, такие как планирование на неделю вперед, не работают. Итак, идея такова: почему бы нам не иметь интеллектуальных программ, представляющих части систем, самостоятельно выбирающихся из этой неразберихи? Эти программы называются агентами. Они должны общаться и договариваться между собой и следить за тем, чтобы задачи выполнялись вовремя. Используя агентов, мы хотим снизить сложность системы управления, сделать ее более управляемой, улучшить взаимодействие человека и машины, сделать ее более надежной и менее подверженной ошибкам и, что очень важно, сделать систему управления децентрализованной.

Вкратце: агенты — это просто концепция, но это концепция, которую каждый может интуитивно понять. Код по-прежнему нужно писать, но он пишется по-другому, на одну абстракцию выше, чем ООП.

person supermedo    schedule 01.10.2008

Было время, когда трудно было найти хороший материал по программным агентам, прежде всего из-за понимания маркетингового потенциала. Цветение этой розы уменьшилось, поэтому отношение сигнал/шум в Интернете улучшилось по сравнению с программными агентами.

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

person Glenn    schedule 31.10.2009

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

person pie154    schedule 02.11.2009

Вы можете найти большое количество официальных документов об агентах здесь.

person Todd Stout    schedule 21.07.2009