2. Ментальный агент
Агент имеет
цели (желания, desires)
представления о внешнем мире
(убеждения, beliefs),
на которые агент опирается при выборе
действия (реализации намерений,
intentions – множество избранных,
совместимых и достижимых желаний)
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 2
3. Процесс рассуждений
Восприятие внешней среды (sensory input)
Проверка представлений (belief revision function) – модификация базы
знаний агента в соответствии с информацией о текущем состоянии
окружающей среды. База знаний (beliefs) – множество представлений
агента о состоянии внешней среды и её закономерностях.
Генерации желаний (generate options) – на основе представлений о
текущем состоянии среды и текущих желаниях агента, формируется новое
множество желаний агента. Множество желаний (desires) – полный
набор целей, которых агент хочет достичь. Определят направления, в
которых может развивать агент свою деятельность.
Фильтр желаний (filter) – выбор из множества всех желаний тех, какие
именно агент будет пытаться реализовать, с учетом представлений и уже
выбранных намерений. Множество намерений (intentions) – набор тех
целей, которых агент решил добиваться. Именно намерения будут
реально направлять деятельность агента.
Принятие решения (action) – выбор, какие именно действия следует
предпринять агенту. Основывается на множестве сформированных
намерений и представлениях агента о внешней среде.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
3
4. Взаимодействие агентов
Согласованность – действия агентов
системы не должны конфликтовать друг с
другом
Эффективность – деятельность системы
в целом должна приводить к достижению
общей цели
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
4
5. Аспекты взаимодействия
Коммуникационные способности могут значительно меняться в
зависимости от свойств агента и внешней среды способы
коммуникации. В некоторых случаях прямая коммуникация может
быть невозможна, или передаваемая информация может
существенно искажаться.
Виды агентов. В гомогенных (все агенты одного вида) и
гетерогенных (возможны агенты разных видов) мультиагентных
системах применимы различные способы организация
взаимодействия агентов.
Открытость среды. Если внешняя среда является открытой, то
новые агенты могут появиться в любой момент времени. Это
требует особого внимания при проектировании взаимодействия. В
закрытой среде, когда набор агентов фиксирован, появляются
дополнительные возможности, например, возможно более точное и
детальное планирование.
Заинтересованность агентов – агенты системы могут
преследовать единую общую цель или свои индивидуальные цели.
Алгоритмы взаимодействия в этих случаях будут сильно
различаться.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 5
6. Коммуникация
Отсутствие коммуникации – агенты догадываются о планах
других агентов или действуют в среде, структура которой не
требует коммуникации.
Сигналы – коммуникация осуществляется с помощью
семафоров. Очень простой вид коммуникации, эффективно
работающий при управлении доступом к разделяемым
ресурсам, но слишком низкая выразительная способность
недостаточна для организации коммуникации в
интеллектуальных системах.
Сообщения – агенты обмениваются сообщениями
определенного вида, содержащими относительно небольшое
количество информации в установленной форме. При этом
четко определенный формат сообщения значительно облегчает
его интерпретацию.
Речевой акт (speech act) –посылка сообщение
рассматривается как разновидность действия, совершаемого с
определенной целью.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 6
7. Аспекты речевого акта
Выражение (locution) – физическое
представление выражения говорящего.
Содержание (illocution) – значение,
которое говорящий намеревался придать
выражению.
Следствие (perlocution) – действие,
которое оказывает выражение на
услышавшего. В теории речевого акта
используется понятие перформатив
(performative) – глагол, употребление
которого в первом лице настоящего
времени означает непосредственное
совершение названного действия.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 7
8. типы сообщений
Роли агентов в диалогах
активная
пассивная
смешанная
Типы сообщений
запросы (queries)
утверждения (assertions)
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 8
9. Коммуникационные возможности
Агент Базовый Пассив-
ный
Активный Смешан-
ный
Принимать
утверждения
+ + + +
Принимать
запросы
+ +
Посылать
утверждения
+ + +
Посылать
запросы
+ +
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 9
10. организации
взаимодействия
Координация (coordination) – начальный уровень,
когда агенты пытаются добиться непротиворечивости
своих оперативных действий.
Кооперация (cooperation) – уровень взаимодействия
возможный в случае системы агентов, преследующих
общие цели. При этом действия агентов могут быть
оптимизированы, например, разделением задач.
Планирование (planning) – разновидность кооперации,
при которой агенты совместно планируют свои действия
по достижению общих целей. В свою очередь
планирование может разделяться на распределенное
и централизованное.
Согласование (negotiation) – взаимодействие между
агентами, преследующими индивидуальные цели, при
котором агенты принимают решения о совместных
действиях с учетом своих собственных целей.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 10
11. Координация
обязательства (commitments) – обещания
придерживаться оподленного курса действий.
Обязательства обеспечивают некоторую степень
предсказуемости и позволяют агентам учитывать
будущие действия других агентов при выработке
собственных действий, связанных с зависимостями,
глобальными ограничениями и разделяемыми
ресурсами.
соглашения (conventions) – предоставляют метод
управления обязательствами в изменяющейся внешней
среде. Соглашения определяют условия, при которых
обязательства могут быть пересмотрены и определяют
связанное действие, которое следует предпринять:
сохранить, изменить или отказаться от обязательства.
Для зависимых целей важно, чтобы другие связанные
агенты были оповещены об изменениях, которые могут
их затронуть. Такого рода соглашения называют
социальными.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 11
12. Кооперация
Сеть контрактов (contract net) – модель,
имитирующая поведение фирм при заключении
контрактов и проведении тендеров.
Рыночный механизм (market mechanism) –
модель, имитирующая поведение
производителей и потребителей.
Мультиагентное планирование (multiagent
planning) – некоторое количество планирующих
агентов отвечают за распределение задач.
Организованная структура (organizational
structure) – агенты имеют свои фиксированные
зоны ответственности, в соответствии с
которыми им присваиваются задачи.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 12
13. Сеть контрактов
Заказчик (manager)
Объявить о задаче, требующей решения
Получить и оценить предложения (bids) от
потенциальных подрядчиков
Присвоить задачу наиболее подходящему подрядчику
Получить результаты выполнения задачи
Подрядчик (contractor)
Получить объявление о задаче
Оценить свои возможности по решению этой задачи
Ответить заказчику (отказаться или сделать
предложение)
Если предложение принято, выполнить задачу
Передать результаты заказчику
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 13
14. механизм
Информация и ресурсы считаются товарами
(goods), на которые устанавливаются цены
(prices).
Два типа агентов: потребители (consumers),
которые могут обмениваться товарами, и
производители (producers), которые могут
преобразовывать одни товары в другие.
Основная задача агентов-потребителей
заключается в максимизации общей
полезности (utility), с учетом бюджетных
ограничений (budget constrains).
Задача агентов-продавцов – максимизация
дохода (profit).
Поведение итогов по покупке и продаже
товаров
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 14
15. Мультиагентное планирование на примере
МАС фирмы ''Генезис знаний''
http://www.kg.ru/
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 15
16. Согласование
Агенты сначала объявляют о своих целях и намерениях,
которые могут конфликтовать, а затем пытаются прийти
к общему соглашению, удовлетворяющему условиям:
Эффективность (efficiency) – агенты не должны
тратить слишком много ресурсов на достижение
соглашения.
Стабильность (stability) – не один из агентов не
должен отходить от согласованных стратегий.
Распределенность (distribution) – не должно
вводиться никакого централизованного алгоритма
управления.
Симметричность (symmetry) – алгоритм не должен
«ущемлять права» отдельных агентов.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 16
17. Разработка МАС
МАС обычно состоит из следующих основных
компонент:
множество организационных единиц, в котором
выделяются: подмножество агентов,
манипулирующих подмножеством объектов;
множество задач;
среда, т.е. некоторое пространство, в котором
существуют агенты и объекты;
множество отношений между агентами;
множество действий агентов (например,
операций над объектами).
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 17
18. Типичные реализации
Новый язык программирования, как правило,
родственный логическим языкам.
Расширение объектно-ориентированного языка
набором классов и вспомогательных средств для
реализации интеллектуальных агентов.
Расширение объектно-ориентированного языка
новыми языковыми конструкциями (как правило, в
этом случае также присутствует новая библиотека
классов).
Набор инструментов визуального моделирования +
кодогенерация или непосредственное исполнение. Как
правило, для наиболее детального описания
используется скрипто-подобный язык (существующий
или свой).
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 18
19. Knowledge Query and Manipulation
Language
KQML – универсальный протокол для обмена
информацией и знаниями
(KQML-performative
:sender <слово>
:receiver <слово>
:language <слово>
:ontology <слово>
:content <выражение>
...)
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 19
20. xKQML
XML, eXtensible Markup Language
<MESSAGE performative=”KQML-performative”>
<ATTRIBUTE name=”sender” value=”[слово]”/>
<ATTRIBUTE name=”receiver” value=”[слово]”/>
<ATTRIBUTE name=”language” value=”[слово]”/>
<ATTRIBUTE name=”ontology” value=”[слово]”/>
...
<CONTENT>
[выражение]
</CONTENT>
</MESSAGE>
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 20
21. Knowledge Interchange Format
KIF – язык обмена знаниями, основанный на
формальной логике
(зарплата 015-245-31 ДИТ 1000)
(зарплата 364-726-78 ДСУД 1500)
(зарплата 452-235-14 ДРЗПО 1200)
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 21
22. Средства разработки МАС
JADE (Java Agent Development Framework)
JACK Intelligent Agents
MadKIT – модульная и масштабируемая мультиагентная платформа,
написанная на Java, поддерживает агентов на разных языках: Java, Python,
Jess, Scheme, BeanSchell
AgentBuilder – коммерческий продукт, агенты общаются на языке KQML
(Knowledge Query and Manipulation Language) и обладают ментальной моделью
Cougaar (Cognitive Agent Architecture) – для построения распределенных МАС с
run-time engine и средствами для визуализации, управления данными и др.
NetLogo – кроссплатформенное программируемое окружение для
программирования МАС
VisualBots – бесплатный мультагентный симулятор в Microsoft Excel с Visual
Basic синтаксисом
MASON – Java библиотека для моделирования МАС
REPAST – набор инструментов для создания систем, основанных на агентах
CogniTAO – С++ платформа разработки автономных МАС, ориентированная на
реальных роботов и виртуальных существ
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 22
23. Java Agent Development Framework
JADE – широко используемая программная среда для
создания мультиагентных систем и приложений,
поддерживающая FIPA-стандарты для
интеллектуальных агентов.
Включает в себя среду выполнения агентов (агенты
регистрируются и работают под управлением среды),
библиотеку классов, которые используются для
разработки агентных систем, набор графических
утилит для администрирования и наблюдения за
жизнедеятельностью активных агентов.
Программная среда JADE подключается к любом
проекту на языке Java. Агенты JADE могут быть
совершенно разными – от простых, только
реагирующих на события, до сложных ментальных.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 23
24. JACK
Так же как и JADE расширяет Java своими
классами и предоставляет run-time оболочку,
инструменты для отладки и т.д.
Кроме того расширяет Java набором
дополнительных конструкций,
интерпретируемых препроцессором.
JACK одна из немногих платформ, где
используются модель логики агентов,
основанная убеждениях-желаниях-
намерениях, и встроенные формально-
логические средства планирования работы
агентов.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 24
25. Области применения
МАС наиболее распространены применительно
к решению задач автоматизации управления
сложными системами, для сбора и обработки
информации, в играх.
Мультиагентные технологии применимы в
управлении мобильными ресурсами, а также в
таких сферах, как проектирование объектов,
промышленное производство, финансовое
планирование и анализ рисков, распознавание
образов, извлечение знаний из данных,
понимание текста и решение других сложных
проблем.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 25
26. Автоматизация управления ресурсами
предприятий
МАС автоматизируют полный цикл управления
ресурсами в реальном времени, включая:
оперативную реакцию на важные события;
динамическое планирование и адаптивное
перепланирование заказов/ресурсов;
взаимодействие с клиентами, менеджерами и
исполнителями для согласования принимаемых
решений через Интернет или сотовый телефон;
мониторинг исполнения построенных планов и
бизнес-процессов заказчика;
перепланирование расписаний в случае
рассогласования между планом и фактом.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 26
27. Автоматизация управления ресурсами
предприятий
МАС автоматизируют полный цикл управления
ресурсами в реальном времени, включая:
оперативную реакцию на важные события;
динамическое планирование и адаптивное
перепланирование заказов/ресурсов;
взаимодействие с клиентами, менеджерами и
исполнителями для согласования принимаемых
решений через Интернет или сотовый телефон;
мониторинг исполнения построенных планов и
бизнес-процессов заказчика;
перепланирование расписаний в случае
рассогласования между планом и фактом.
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 27
29. Примеры промышленных внедрений
МАС фирмы ''Генезис знаний'' внедрена
в компании занимающихся междугородними
транспортными перевозками (организовано
согласованное планирование парка грузовиков для
менеджеров центра и филиалов)
в компании корпоративного такси (планирование и
распределение текущих заказов в режиме реально
времени)
для аэропорта (система управления наземными
сервисами аэропорта на основе RFID-технологий)
для планирования доставки грузов на МКС
для планирования загрузки складов LEGO
Разработка приложений для мобильных интеллектуальных систем. Лекция 3
----------------------------------------------------------------------------------------------------------- 29
30. Управление группами
интеллектуальных роботов
Основные принципы коллективного управления
каждый член коллектива группы самостоятельно формирует свое управление
(определяет свои действия) в текущей ситуации
формирование управлений (выбор действий) каждым членом коллектива
осуществляется только на основе информации о коллективной цели, стоящей
перед группой, ситуации в среде в предыдущей отрезок и в текущий момент
времени, своем текущем состоянии и текущих действиях других членов
коллектива;
в качестве оптимального управления (действия) каждого члена коллектива в
текущей ситуации понимается такое управление (действие), которое вносит
максимально возможный вклад в достижение общей (коллективной) цели или,
иными словами, дает максимально возможное приращение целевого
функционала при переходе системы «коллектив-среда»' из текущего состояния
в конечное;
оптимальное управление реализуется членами коллектива в течение
ближайшего отрезка времени в будущем, а затем определяется новое
управление;
допускается принятие компромиссных решений, удовлетворяющих всех членов
коллектива, то есть каждый член коллектива может отказываться от действий,
приносящих ему максимальную выгоду, если эти действия приносят малые
выгоды или даже ущерб коллективу в целом