Мультиагентные системы и сообщества агентов, страница 13

   Состояние совместного обязательства члена команды изменяется

ДЕЙСТВИЕ

Правило1:               ЕСЛИ состояние обязательства совместного действия изменяется

                   ИЛИ

                   ЕСЛИ состояние обязательства достижения общего действия в текущем командном контексте изменяется

                   ТО проинформировать всех других членов команды об этих изменениях

Правило2:               ЕСЛИ состояние совместного обязательства члена команды изменяется

                   ТО определить является ли все еще действительным совместное обязательство

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

2.3.2 Протоколы кооперации.

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

Декомпозиция задачи может быть сделана разработчиком системы, посредством чего декомпозиция будет запрограммирована в процессе реализации, или посредством агентов, использующих иерархическое планирование, или может быть заложена в представление проблемы, как в AND/OR графе. Разделение задачи может быть сделано пространственно, основываясь на расположении источников или точек принятия решения, или функционально, в соответствии с умениями доступных агентов.

Как только задачи разделены, они могут быть распределены в соответствии со следующими критериями [13]:

-  избегать перегрузки важных ресурсов

-  назначать задания агентам в соответствии с их способностями

-  заставить агента с широким обзором назначать задачи другим

-  назначать перекрывающиеся обязанности агентам для достижения согласованности

-  назначать сильно взаимозависимые задачи пространственно или семантически близким агентам. Это минимизирует затраты на коммуникацию и синхронизацию

-  переназначать задачи если необходимо срочное их выполнение.


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

Следующие механизмы обычно используются для распределения задач:

-  рыночный механизм: задачи раздаются агентам по обобщенному соглашению или общим выбором (аналогично калькуляцию цен на товары)

-  контрактная сеть: заявления, предложение цены, и присуждаемые циклы

-  мультиагентное планирование: планирующие агенты несут ответственность за назначение задач

-  организационная структура: агенты имеют фиксированные обязанности по конкретным задачам.

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

2.3.3 Контрактная сеть.

Из переведенных выше механизмов, наиболее известным и наиболее широко используемым является протокол контрактной сети. [44,9]. Протокол контрактной сети это протокол взаимодействия агентов для кооперативного решения проблем. Он создан на основе контрактного механизма, используемого в бизнесе управления обменом товаров и услуг. Контрактная сеть является решением так называемой проблемы соединения: нахождение подходящего агента для выполнения данной задачи. Рисунок 2.6 показывает базовые шаги этого протокола.

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