36248

Программные агенты: классификация, структура. Многоагентные системы

Доклад

Информатика, кибернетика и программирование

Классификация агентов. Классификация агентов типы агентов Простые Смышленые Интеллектуальные характеристики Автономное выполнение Взаимодействие с другими агентами и пользователями Слежение за окружением Способность использования абстракций Способность использования предметных знаний Возможность адаптивного поведения для достижения цели Обучение из окружения Терпимость к ошибкам Rel time исполнение ER взаимодействие С позиции изучаемой дисциплины нас прежде всего...

Русский

2013-09-21

43.5 KB

47 чел.

  1.  Программные агенты: классификация, структура. Многоагентные системы.

Агентно- ориентированные системы.

1.             Понятие агента. Классификация агентов.

2.             Агентные системы.

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

Классификация агентов

типы агентов  

Простые

Смышленые

Интеллектуальные характеристики

Автономное выполнение

+

 

+

Взаимодействие с другими агентами и пользователями

+

+

+

Слежение за окружением

+

+

+

Способность использования абстракций

 

+

+

Способность использования предметных знаний

 

+

+

Возможность адаптивного поведения для достижения цели

 

 

+

Обучение из окружения

 

 

+

Терпимость к ошибкам

 

 

+

Real- time исполнение

 

 

+

ER- взаимодействие

 

 

+

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

¨               Автономность— способность агента  функционировать без вмешательства со стороны своего владельца и осуществлять контроль внутреннего состояния  и своих действий.

¨               Социальное поведение— возможность взаимодействия и коммуникации с другими агентами.

¨               Реактивность— адекватное восприятие среды и соответствующие реакции на ее изменение.

¨               Активность— способность генерировать цели и действовать рациональным способом для их достижения.

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

¨               Убеждения— переменная часть базовых знаний.

¨               Цели—  совокупность состояний, на достижение которых направлено текущее поведение агента.

¨               Желания— состояния или ситуации, достижение которых для агента важно.

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

¨               Намерения— то, что агент должен делать в силу своих обязательств или желаний.

/2/

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

Схема программного агента.

 

Управление собственными процессами. Подобные системы обладают своей собственной операционной системой, причем набор критериев диспетчеризации задач шире традиционного.

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

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

Inform (информация) простейшая форма при которой агент- отправитель посылает сообщение, не требуя подтверждения.

Offer (предложение) возможен отказ от получения информации если агент- адресат в момент прибытия сообщения занят.

Request (заявка) в самом постом случае агент В может просто выполнить заявку агента А с опцией подтверждения получения информации. Заявка может быть отклонена агентом В или повторена им. Агент А в любой момент может повторить заявку или отозвать ее. Если заявка принята агентом В, он посылает сообщение агенту А, что заявка принята и сообщает результаты ее обработки.

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

 

Многоагентные системы.

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

¨               Расширяемости/ масштабируемости

¨               Мобильности/ переносимости

¨               Интероперабельности

¨               Дружелюбности к пользователю.

Одним из результатов внедрения концепции открытых систем является распространение архитектуры «клиент- сервер»выделяет 2 модели клиент- серверного взаимодействия:

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

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

При создании много- агентных систем чаще используется второй подход.

Многоагентные системы подразделяются на статические (позволяют передавать только данные приложений) и динамические (обеспечивают возможность передачи исполняемого кода).

При динамическом подходе многоагентные системы используют понятие мобильных агентов. Мобильные агенты— это программы, которые могут перемещаться по сети, например по WWW. Они покидают клиентский компьютер и перемещаются на удаленный сервер для выполнения своих действий, после чего возвращаются обратно.

В настоящее время наиболее известными технологиями реализации статических и динамических многоагентных систем являются DCOM (Microsoft Distributed Component Object Model), Java RMI (Java Remote Method Invocation), CORBA (Common Object Request Broker Architecture).

Модель Microsoft DCOM является объектной моделью, которая поддерживается Widows 95-2000, XP, Windows NT, Sun Solaris, Digital UNIX, ISM MVS и др. Основная ее ценность в возможности интеграции приложений, реализованных в разных системах программирования

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

CORBA является частью OMA (Object Management Architecture) разработанной для стандартизации архитектуры и взаимодействия объектно- ориентированных приложений. Интерфейсы между CORBA объектами определяются через специальный язык IDL (Interface Definition Language), который является языком описания интерфейса. Сами интерфейсы могут быть при этом реализованы на любых других языках программирования.


 

А также другие работы, которые могут Вас заинтересовать

4909. Клиент-серверные взаимодействия на основе сокетов 80 KB
  Клиент-серверные взаимодействия на основе сокетов Рассматривается методика построения Web-приложений на основе сокетных соединений. Приводятся примеры построения клиентских и серверных приложений, реализующих клиент-серверные взаимодействия. Техн...
4910. Основы программирования на языке турбо паскаль 2.87 MB
  Язык программирования Паскаль, разработанный в 1970 г. профессором Швейцарской высшей политехнической школы Никлаусом Виртом специально для целей обучения студентов, быстро завоевал широкую популярность благодаря своей простоте, логичности языковых ...
4911. Разработка программы-эмулятора для заданной гипотетической ЭВМ 2.3 MB
  В настоящее время получило широкое распространение использование микропроцессоров в качестве встроенных элементов систем автоматического управления,в том числе как управляющих блоков периферийных узлов вычислительных комплексов. Функции...
4912. Алгоритмы и основы программирования 651.5 KB
  Алгоритмы и основы программирования. Краткое содержание: Этапы создания компьютерной программы. Понятие алгоритма. Виды алгоритмов. Представление алгоритмов в виде блок-схем. Понятие о программировании. Системы и языки программирования. Запись алгор...
4913. Организация списочных и древовидных структур 16.05 KB
  Организация списочных и древовидных структур. В тех случаях, когда количество данных, обрабатываемых программой, заранее не известно или изменяется в процессе работы программы, использовать жестко определённые типы данных (массивы) не рационально ил...
4914. Конструкторы и деструкторы 17.73 KB
  Конструкторы и деструкторы Специальные методы объекта, которые предназначены для выполнения настроечных действий в момент создания каждого экземпляра объекта. В концепции ООП конструктор должен активизироваться автоматически, т.е....
4915. Работа с файлами в языке паскаль 17.24 KB
  Работа с файлами в языке паскаль. В языке паскаль с файлами можно работать несколькими способами. Все зависит от того, как этот файл открывается. Один и тот же файл можно открывать разными способами. Правда, если открыть нее тем способом, можно проч...
4916. BGI графика 15.2 KB
  BGI графика. В языках программирования специальных средств для создания графических приложений не было. Единственная возможность выводить графику на экран была только при помощи использования функции bios прямого обращения к видимой памяти. Задача д...
4917. Trubo Pascal. Программное управление работой компьютера 35 KB
  В XIX веке английским математиком и инженером Чарльзом Бэббиджем был разработан проект вычислительной машины, которая предназначалась для автоматического проведения длинных цепочек вычислений. Конструкция его аналитической машины включала 50 тысяч д...