какое свойство рационального агента является важным для создания многоагентных систем

Основные понятия. Свойства агентов

какое свойство рационального агента является важным для создания многоагентных систем какое свойство рационального агента является важным для создания многоагентных систем какое свойство рационального агента является важным для создания многоагентных систем какое свойство рационального агента является важным для создания многоагентных систем

какое свойство рационального агента является важным для создания многоагентных систем

какое свойство рационального агента является важным для создания многоагентных систем

Интеллектуальный агент многоагентной системы

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

На Токийской встрече в октябре 1996 года определение агента было сформулировано следующим образом:

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

Существует еще одно определение агента:

“Агент – это компьютерная система, которая функционирует в некоторой среде, и которая способна к автономно вырабатываемой реакции для реализации целей, ради которых она (компьютерная система) была создана».

какое свойство рационального агента является важным для создания многоагентных систем

Рис. 1. Взаимодействие агента и внешней среды

Заметим, что некоторые из терминов, использованных в этом определении (автономность, тип внешней среды) нуждаются в пояснении. Приведенное определение демонстрируется простой схемой, представленной на рис. 1.

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

· реактивность (reactivity) – это способность агента воспринимать состояние среды и своевременно отвечать (реагировать) на те изменения, которые в ней происходят.

· способность к интеллектуальному («разумному») и целенаправленному поведению (pro-activity) [4] – способность агента брать на себя инициативу, т.е. способность генерировать цели и действовать рационально для их достижения, а не только реагировать на внешние события. Наличие этого свойства является одним из важнейших показателей уровня интеллектуальности агента. Например, если предусловия, необходимые для успешности действий, исполняемых агентом, перестали выполняться уже после начала действий, то он должен прекратить исполнение бесполезного действия. В этом одно из отличий агента от обычной программы или объекта. Особенно важно это качество агента в среде, которая не может быть полностью наблюдаема. Заметим также, что в некоторых случаях внешняя среда столь сложна, что в ней наделить агента столь «разумным» поведением технически или очень трудно, если возможно вообще.

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

Для агента очень важно обеспечить рациональное сочетание, баланс реактивного и «разумного» поведения. Крайние случаи могут оказаться одинаково нерациональными: в первом случае поведение агента аналогично поведению менеджера, который реагирует только на текущие потребности, во втором случае агент подобен менеджеру, который ведет сразу много дел, по сути, не заканчивая ни одного из них.

какое свойство рационального агента является важным для создания многоагентных систем

· знания (knowledge) – это постоянная часть знаний агента о себе, о среде, а также, возможно, знания о других агентах. Это та часть знаний, которая не изменяется в процессе функционирования агента;

· убеждения (beliefs) – это знания агента о внешней среде и о других агентах. Эти знания, могут быть недостоверными, изменяться во времени и становиться неверными. Агент должен эти знания постоянно обновлять. Если он не имеет информации, которая формирует его убеждения, то, оставаясь со старыми убеждениями, он может на их основе делать неверные выводы.

Следующие свойства агента принято называть мотивационными.

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

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

· цели (goals) – это конкретное множество конечных и промежуточных состояний, достижение которых агент считает реализацией своих намерений, которые определяют текущую стратегию его поведения;

· обязательства (commitments) – это те задачи, которые агент берет на себя по просьбе или по поручению других агентов в рамках кооперативных целей или целей других агентов в рамках коалиций или альянсов, в которые данный агент входит.

В некоторых приложениях от агента требуется, чтобы он обладал рядом дополнительных свойств. К ним относятся:

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

· рациональность (rationality) – это свойство агента действовать так, чтобы достигнуть своих целей, и в рамках своих знаний и убеждений не делать ничего, чтобы избежать достижения своих целей.

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

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

Детерминированная/недетерминированная среды. В детерминированной среде ее реакция на воздействие со стороны агента вполне предсказуема, в то время как в недетерминированной среде на одно и то же воздействие агента может последовать различная реакция.

Среда с независимым/зависимым множествами состояний. Например, агент, сортирующий электронную почту, имеет конечное множество ситуаций, и сценарии его действий в одной из них никак не связаны со сценариями действий в других ситуациях. Главное отличительное свойство таких сред в том, что в этом случае нет необходимости анализировать влияние одного эпизода действий на характер действий, целесообразных во втором эпизоде. Для среды с зависимыми состояниями это может потребоваться. Именно такой случай имеет место в случае коллектива роботов, которые распознают и транспортируют грузы при их появлении в определенных местах, если при этом взаимное положение грузов на площадке (складе) зависит от порядка прибытия грузов.

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

Дискретная/непрерывная среда. Если внешняя среда имеет конечное множество состояний, то агенту достаточно иметь конечное множество реакций. Примером являются игровые задачи с определенной заранее последовательностью действий, агенты, осуществляющие некоторое обслуживание и др.

Источник

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

Увидел топик про мультиагентные систему и решил кой-чего добавить на эту тему. Сосредоточусь на 2-х направлениях: чем МАС отличаются от классических систем (кроме параллельности, которая все-же и не только в МАС встречается) и на двух примерах, практическом и абстрактно-теоретическом.

Высоколобая теория

Немного банальщины и истории

Современное ПО, например, корпоративного уровня, неимоверно сложно. Усугубляет дело «масштабный фактор» — чем больше система, тем быстрее растет ее сложность, так как растет число связей между частями.
МАС является одним из способов упростить систему, так как позволяет сократить число внутренних связей в системе (если подумать, то это можно сказать почти про любую достаточно автономную систему ИИ).
Первоначально МАС появились как распределенные системы ИИ. В 1980г в MIT состоялась первый семинар на тему распределенных решателей задач ИИ, на котором поднимались вопросы эффективной координации многих агентов и демонов, разработка системы классной доски и ряд других. Некоторые считают 1980 годом рождения МАС.

Общие принципы работы
Особенности

Два примера

Логистика

Логистика является одной традиционных и наиболее развитых сфер использования мультиагентных систем. Это вызвано большой эффективностью (при использовании МАС может происходить уменьшение расходов до нескольких сотен процентов в сравнении с ручным расчетом). Эффективность достигается за счет того, что в логистике есть достаточно большое число поставщиков товаров и достаточно большое число потребителей и, при этом, поставлять готовы больше, чем потреблять. Следовательно, наиболее опасной для МАС ситуации «драчки за ограниченные ресурсы» не происходит.
Агенты в логистике делятся на поставщиков, потребителей и курьеров. Задачей каждого курьера является оптимальная нагрузка на транспорт (чтобы «грузовик» был забит ровно на величину объема/грузоподъемности, чтобы порожних рейсов было как можно меньше, а лучше вообще не было) и оптимизация маршрута (минимизация пути и времени, хотя возможны и другие параметры, например качество дорожного покрытия, частота милицейских будок и прочее). Условием работы является полное выполнение заказов на доставку и возможность взять достаточное количество ресурсов от поставщиков.

Свечной заводик

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

Конец

На выводы это не тянет, заключением так же не является, поэтому будет «конец».
При написании статьи использовалась замечательная книга по общим вопросам систем искусственного интеллекта Люгера, небольшой личный опыт (делал маленький симлайф) и много разного сопряженного материала по проблемам распределенного СИИ. Особо отмечу некую международную компанию, которая работает над ПО по решению задач логистики с помощью МАС (оттуда взята основа для примера «логистика»). Ищу. Как только будет что-то — добавлю сюда. Нашел, склерозник… Компания называется Magenta Technology (есть «умеренно русская версия» — клик по флажку )

Литература:
Джордж Ф. Люгер Искусственный интеллект. Стратегии и методы решения сложных проблем. 4-е издание.: Пер. с англ. — М.: Издательский дом «Вильямс», 2003 — 846с.

Upd: благодарю уважаемую киноакадемию (не знаю за что, но так вроди полагается) мою маму за то, что она меня родила и растила и НЛО за то, что оно прилетело и дало инвайт ))

Источник

Управление на базе мультиагентных систем

Агенты и мультиагентные системы

В начале XXI века группа ведущих мировых ученых составила список приоритетных задач кибернетики на ближайшие 50 лет [Murray R.M., Astrom K.J., Boyd S.P., Brockett R.W., Stein G., 2003]. Среди них:

Мультиагентная система ( MAC ) кардинально отличаются от традиционных «жестко» организованных систем, и, в перспективе, способны помочь в решении этих задач.

Начало построения моделей и применения искусственных мультиагентных систем на практике было положено в 1960-х годах. В качестве основы были взяты достижения таких областей деятельности человека, как системы искусственного интеллекта ( Artificial Intelligence ), параллельные вычисления (Parallel Computing ), распределенное решение задач ( Distributed Problem Solving). Многоагентные системы имеют реальную возможность интегрировать в себе самые передовые достижения перечисленных областей, демонстрируя принципиально новые качества. Сейчас MAC — одно из наиболее динамично развивающихся и перспективных направлений в области искусственного интеллекта [Городецкий В.И., Грушинский М.С., Хабалов А.В., 1998].

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

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

Словари дают следующее толкование слова агент : «некто или нечто, прикладывающее усилия для достижения эффекта». Такое самое общее определение указывает на первый признак агента — агенты совершают действия. Часто утверждается, что агенты не просто совершают действия, но они действуют автономно и рационально. Под автономностью обычно понимают, что агент действует без прямого вмешательства человека или другой управляющей сущности. Под рациональностью понимают стремление агента оптимизировать значение некоторой оценочной функции. Мера рациональности неявно указывает на то, что агент имеет цели (желания — англ. desires), которых агент «хочет» достичь, и представления о внешнем мире (убеждения — англ. beliefs), на которые агент опирается при выборе действия (реализации намерений — англ. intentions: множество избранных, совместимых и достижимых желаний).

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

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

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

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

Сложные системы часто рассматривают как среду действия агентов. С понятием сложных систем связаны следующие фундаментальные идеи, которые непосредственно влияют на функционирование МАС:

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

В настоящее время не существует устоявшегося определения агента. Ниже перечислены некоторые из них:

» Агент — это аппаратная или программная сущность, способная действовать в интересах достижения целей, поставленных пользователем».

«Под агентом можно понимать самостоятельную программную систему, состоящую из программ-объектов, имеющую возможность принимать воздействие из внешнего мира, определять свою реакцию на это воздействие и в соответствии с этим формировать ответное действие. Такие агенты способны действовать, «рассуждать» и обмениваться данными друг с другом в сети для формирования индивидуальных или коллективных решений».

По определению Кристиана Доннегара (директора по технологии компании Living Systems, занимающейся созданием систем совместной коммерции на основе технологии агентов): «агенты — программные объекты, которые выполняют определенные упреждающие и корректирующие действия в соответствии с заданиями, делегированными человеком».

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

какое свойство рационального агента является важным для создания многоагентных систем

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

На основании изложенного выше мы можем скомпилировать следующее определение [Кияев В. И., Герасимов Р. В., 2012]: » агент — это самостоятельная программная система,

Интеллектуальный агент должен обладать следующими свойствами [Vittikh V. A. — http://www.cs.brandeis.edu/dept/ faculty/ mataric]:

Иногда в этот же перечень добавляются и такие человеческие свойства, как рациональность, правдивость, благожелательность.

Мультиагентная система (МАС) — сложная система, в которой функционируют два или более интеллектуальных агентов. Процесс самоорганизации в мультиагентных системах — внутренняя упорядоченность, согласованность, взаимодействие более или менее дифференцированных и автономных агентов агентной системы, обусловленной ее строением. Таким образом, в МАС несколько агентов могут общаться, передавать друг другу некоторую информацию, взаимодействовать между собой и решать поставленную. В такой системе задачи (или подзадачи) распределены между агентами, каждый из которых рассматривается как член группы или организации. Распределение задач предполагает назначение ролей каждому из членов группы, определение меры его «ответственности» и требований к «опыту».

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

какое свойство рационального агента является важным для создания многоагентных систем

какое свойство рационального агента является важным для создания многоагентных систем

Общая методология восходящего эволюционного проектирования МАС может быть представлена цепочкой: <среда – функции МАС – роли агентов – отношения между агентами – базовые структуры МАС – модификации>, и включает следующие этапы:

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

Главная идея нисходящего проектирования состоит в определении общих социальных характеристик МАС по некоторому набору критериев, построении базовых типов их организаций с последующим определением требований к архитектуре агентов. Когда речь идет о «выращивании» искусственных социальных систем и сообществ, на первый план выдвигается нисходящий подход к организационному проектированию.

В рассмотренных ниже примерах, безусловно, наиболее подходящим является проектирование на основе восходящего подхода.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *