Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Agents.doc
Скачиваний:
6
Добавлен:
02.03.2016
Размер:
158.21 Кб
Скачать

4.5. Технологии проектирования мас

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

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

  • уменьшение времени и стоимости передачи данных;

  • расширение ограниченных локальных ресурсов;

  • облегчение координации;

  • выполнение асинхронных вычислений.

Проблемы использования мобильных агентов:

    1. Легальность способов перемещения объектов по сети.

    2. Верификация агентов (например, защита от вирусов.

    3. Соблюдение прав частной собственности.

    4. Сохранение конфиденциальности информации.

    5. Перенаселение сети агентами.

    6. Несовместимость кода агента и программно-аппаратных средств сетевой машины.

Для реализации МАС, основанных на распределенных приложениях, используются технологии DCOM,JavaRMI(RemoteMethodInvocation),CORBA(CommonObjectRequestBrokerArchitecture).

Программное средство AgentBuilder(ReticularSystems) предназначено для разработки МАС на основеJava-программ, исполняемых на любо компьютере, где установлена виртуальнаяJava-машина (VirtualJavaMachine).

Схема проектирования и реализации приложений на основе AgentBuilderToolKit.

Модель жизненного цикла создаваемых агентов включает следующие этапы:

  • обработку новых сообщений;

  • определение правил поведения;

  • выполнение действий;

  • обновление ментальной модели (ментальных свойств) в соответствии с заданными правилами;

  • планирование действий.

Правила поведения в AgentBuilderреализуются на специальном ОО языкеRADL(ReticularAgentDefinitionLanguage) в виде конструкцииWhen-If-Then. Составные части этого правила выполняют следующие функции:

Name<RuleName> содержит наименование правила;

When<MessageConditions> содержит новые сообщения, полученные от других агентов;

If<MentalConditions> сравнивает текущую ментальную модель с условиями применимости правила;

Then<PrivateActions,MentalChanges,MessageActions> определяет действия, соответствующие текущим событиям, ментальной моделии состоянию внешнего окружения.

Язык RADLосновывается на продукционно-фреймовом хранении знаний и данных.

Недостатком AgentBuilderназывают отсутствие средств явного управления логическим выводом.