Главная
страница 1страница 2страница 3


ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение высшего

профессионального образования
«МАТИ»- РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

им. К.Э.ЦИОЛКОВСКОГО


Кафедра «Информационные технологии»



Методическое пособие по дисциплине «Многоагентные системы»

и указания к выполнению лабораторных работ

Специальность 230102 «Автоматизированные системы обработки информации и управления»

Составители: Тарасов В.Б.

Новиков С.О.



Москва 2006

ОГЛАВЛЕНИЕ

Ведение 3

1. Лабораторная работа №1 5

1.1. Цель работы 5

1.2. Основные теоретические положения 5

1.3. Задание и методические указания к выполнению лабораторной работы 20

1.3.1. Задание на лабораторную работу 20

1.3.2. Форма отчетности 21

1.3.3. Методические указания к выполнению работы 21

1.4. Контрольные вопросы 21

1.5. Варианты заданий на лабораторную работу 21

2. Лабораторная работа №2 23

2.1. Цель работы 23

2.2. Основные теоретические положения 23

2.3. Задание и методические указания к выполнению лабораторной работы 33

2.3.1. Задание на лабораторную работу 33

2.3.2. Форма отчетности 34

2.3.3. Методические указания к выполнению работы 34

2.4. Контрольные вопросы 34

2.5. Варианты заданий на лабораторную работу 35

3. Лабораторная работа №3 35

3.1. Цель работы 35

3.2. Основные теоретические положения 35

3.3. Задание и методические указания к выполнению лабораторной работы 37

3.3.1. Задание на лабораторную работу 37

3.3.2. Форма отчетности 37

3.3.3. Методические указания к выполнению работы 38

3.4. Контрольные вопросы 38

3.5. Варианты заданий на лабораторную работу 38

4. Лабораторная работа № 4 39

4.1. Цель работы 39

4.2. Основные теоретические положения 39

4.3. Задание и методические указания к выполнению лабораторной работы 41

4.3.1. Задание на лабораторную работу 41

4.3.2. Форма отчетности 42

4.3.3. Методические указания к выполнению работы 42

4.4. Контрольные вопросы 43

4.5. Варианты заданий на лабораторную работу 43

5. Список литературы 43


Введение
Цель преподавания дисциплины «Многоагентные системы» заключается в обучении студентов передовым методам, моделям, средствам и технологиям компьютерной обработки информации и автоматизированного управления на основе теории искусственных агентов и многоагентных систем. Овладение материалом курса должно заложить у студентов теоретическую базу в области агентно-ориентированного подхода в информатике и искусственном интеллекте и сформировать у них основные навыки пользователей и разработчиков современных компьютерных систем, опирающихся на технологию агентов.
Задачи преподавания дисциплины:


  • дать студентам объективное и достаточно полное представление о компьютерных агентах, многоагентных системах и виртуальных организациях;

  • подготовить студентов к применению агентно-ориентированных подходов и технологий в дипломном проектировании;

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

Данная дисциплина тесно связана с такими предшествующими дисциплинами как «Теория множеств», «Дискретная математика», «Математическая логика», «Теория систем», «Теория графов», «Информационные технологии», «Системы искусственного интеллекта.


После изучения курса студент должен

Знать и уметь использовать:

общие принципы построения, основные свойства и архитектуры автономных агентов;

методологию, методы и модели формирования многоагентных систем и виртуальных организаций;

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

Иметь опыт:

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

программирования агентов с использованием языков объектно- и/или агентно-ориентированного программирования, библиотек агентов и агентских сред; разработки структур коммуникации агентов на основе стандарта ACL (Agents Communication Language);

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

Иметь представление о:

причинах появления и основных направлениях развития теории агентов и многоагентных систем как стратегической области информатики и искусственного интеллекта;

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

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

методах моделирования поведения и действий агентов;

классах организационных структур многоагентных систем и виртуальных сообществ.

1. Лабораторная работа №1

1.1. Цель работы

Знакомство с методологиями и инструментальными средствами проектирования агентов и многоагентных систем. Проектирование агентов на основе подхода «ресурсы-действия-операции»


1.2. Основные теоретические положения
Общая классификация агентов. Коннекционистские архитектуры. Инструментальные средства разработки
В работе [2] предложено строить классификацию аген­тов и выбирать соответствующие формальные средства их описания с помощью тройки критериев: тип среды, уровень «свободы воли» (по В. А.Лефевру) и уровень развития социальных отношений. Так для простейших замкнутых сред достаточ­но агентов автоматного уровня сложности (модели коллективного поведения автоматов), а в случае более сложных замкнутых сред имеем дело с агентами, основанными на конечных наборах правил и сценариев их применения (например, нечеткие регуляторы). Агенты, основанные на правилах, активно используются в компьютерных сетях, работая в рамках «клиент-серверного» подхода. В це­лом, когда среда замкнута, пара «среда-агент» может быть в принципе задана формальной системой, т.е. действия агента здесь могут быть описаны в рамках подходящего логического исчисления (например, модальные логики или логики предикатов высокого порядка). Для открытых сред требуется переход к семиоти­ческому моделированию.

Еще одним важнейшим основанием для классификации искусственных аген­тов служит принятие либо психологической, либо биологической метафоры при рассмотрении природы их действий. В одном случае, речь идет о трактовке агентов как квазисубъектов, самостоятельно решающих встающие перед ними задачи, а в другом они упод­обляются простейшим организмам, непосредственно реагирующим на изменения среды в интересах выживания и адаптации. В частности, исходя из биологической метафоры, строились М-автоматы Н. М.Амосова [3], а, позднее, стали конструироваться «аниматы» [4], т.е. искусственные животные, которые в процессе выживания должны приспосабливаться ко все более сложным и враждебным средам. Аниматы могут быть реализованы и как виртуальные агенты (имитация на компьютере), и как роботы, действующие в реальном физическом мире.

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



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

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

У полноценного интеллектуального агента обязательно должны присутство­вать как минимум четыре перечисленных функции: когнитивная, рассуждающая (а, в более общем контексте, регулятивная), коммуникативная и ресурсная.

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

Интеллектуальные агенты, будучи значительно автономнее реактивных, име­ют ярче выраженную индивидуальность и характеризуются целесообразным поведением в сообществе агентов, а также стремлением использовать ресурсы других агентов для достижения собственных целей. В то же время, реактивные агенты, как это видно из самого их названия, работают в основном на уровне стимульно-реактивных связей, обладая очень бедной индивидуальностью и сильной зависимостью от внешней среды (сообщества агентов). Результаты сравнительного анализа реактивных и когнитивных агентов представлены в табл.1.
Таблица 1

Сравнительный анализ свойств когнитивных и реактивных агентов



Характеристики


Когнитивные агенты


Реактивные агенты


Внутренняя модель внешнего мира


Развитая


Примитивная


Рассуждения


Сложные и рефлексив­ные рассуждения


Простые одношаговые рас­суждения


Мотивация


Развитая система мотивации, включающая убеждения, желания, намерения

Простейшие побуждения, связанные с выживанием


Память


Есть


Нет


Реакция


Медленная


Быстрая


Адаптивность


Малая


Высокая


Модульная архитектура


Есть


Нет


Состав MAC


Небольшое число автономных агентов


Большое число зависимых друг от друга агентов

Далее, по типу поведения интеллектуальные агенты делятся на интенциональных и рефлекторных, а реактивные — на побуждаемых (импульсивных) и трофических [1]. Большинство интеллектуальных (когнитивных) агентов можно отнести к числу интенциональных [6]. Подобные агенты наделены собственными механизмами мотивации. Это означает, что в них так или иначе моделируются внутренние убеждения, желания, намерения и мотивы, порождающие цели, ко­торые и определяют их действия.

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

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

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

По сложности этих реакций и происхождению источников мотивации реак­тивные агенты подразделяются на импульсивных и трофических агентов [1]. В случае трофических агентов поведение определяется простейшими тро­фическими связями (типа «кто кого ест»). Фактически оно сводится к ответу на стимулы, поступающие из внешней среды (собственных мотивов и целей нет), т.е. полностью определяется ее локальным состоянием. Типичной моделью подобных агентов являются клеточные автоматы, где основными параметрами выступают: радиус восприятия агента, количество условных единиц питания во внешней среде и энергетическая стоимость единицы. Здесь каждый трофиче­ский (по сути, ситуационный) агент обладает небольшим набором ситуационных правил, задающим его реакции на сигналы из среды. Примерами подобных пра­вил служат выражения типа «если в радиусе восприятия есть единица питания, то направиться к ней» или «если в радиусе восприятия не обнаружена единица питания, то случайным образом выбрать один из свободных соседних квадратов и передвинуться в этот квадрат».

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

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



где уi, — отклонение некоторой жизненно важной переменной от нормы (по­требность), аi — вес (субъективная важность) этой потребности, t — время, а произведение Мi = аiуi естественно трактовать как побуждение (импульс).

Итак, когнитивные агенты, благодаря их сложности, наличию знаний и спо­собностей к рассуждениям о своем поведении и внешней среде, могут быть более автономными, чем реактивные. Они работают относительно независимо, демонстрируя достаточно гибкое поведение. Но все та же сложность автоном­ных агентов, выливающаяся в способность противиться внешним воздействиям, вызывает определенные трудности при организации их эффективного взаимодей­ствия. Поэтому в составе MAC, включающей только интеллектуальных агентов, как правило, присутствует не более 7 + 2 автономных единиц (магическое число Миллера).

Напротив, довольно простая структура реактивных агентов, обусловливает их жесткую зависимость от среды. Следовательно, их возможности сравнительно невелики, когда они функционируют в одиночку и ограничены своими соб­ственными ресурсами. Однако им легче образовать группу или организацию, способную гибко адаптироваться к изменениям среды под действием механизма естественного отбора. Поэтому реактивные агенты представляют интерес не на ин­дивидуальном, а на коллективном уровне, причем их способности к адаптации и развитию возникают спонтанно в результате локальных взаимодействий. Таким образом, реактивные агенты, которые почти не имеют индивидуальности, раство­ряясь в общей массе, за счет своего большого числа и избыточности могут решать сложные задачи. В пределе, соответствующие MAC могут формироваться в резуль­тате спонтанных взаимодействий без точной спецификации отдельных агентов. Подобные «тучи» или «рои» (swarms) [8], состоящие из значительного числа подвижных, реактивных агентов, можно сравнить с неким сверхорганизмом. Взаимная адаптация и кооперация клеток в таком организме позволяет создать общую цепь обратной связи, обеспе­чивающую гомеостазис всей системы.

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

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




Рис. 2. Архитектура агента на базе нейронной сети




Рис. 3. Пример архитектуры агента на базе нейронной сети с обратными связями


Безусловно, большой интерес для реализации агентов представляют и нечеткие нейронные сети, обеспечивающие работу с нечеткими сигналами и весами, а также сети, соста­вленные из нечетких нейронов. Сети, построенные из (И/ИЛИ)-нейронов позволяют реализовать логические модели агентов

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

Следует отметить, что некоторые современные нейросети, в частно­сти, сети Кохонена, Фукушимы, адаптивного резонанса [9], хорошо подходят для моделирования про­цессов самоорганизации и самообучения агентов. Логично предположить, что архитектуры се­тей, моделирующих процессы самооргани­зации агента, должны быть многоуровневы­ми. При этом, например, на низшем уров­не поведение нейронов рассматривается как хаотическое, на среднем уровне возникают функционально ориентированные ансамбли нейронов, а на высшем уровне процессы ада­птации и кооперации связаны с появлением резонансных эффектов.

Последнее время было разработано множество различных средств поддержки разработки агентов и МАС. В работе [11], посвященной анализу и сравнению подобных средств, были рассмотрены пять пакетов программ: AgentBuilder, CaseLP, DESIRE, IMPACT и Zeus. Авторы работы [11], согласно их классификации существующих средств, отмечая различия в способностях, характеристиках, средствах реализации, используемых технологиях, и т.д., относят эти программы к разным классам. Однако, ни один из пакетов программ не использует коннекционистские архитектуры агентов, что является большим упущением со стороны разработчиков.


Структура и свойства искусственного нейрона

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





Рис. 4
Математическая модель нейрона:

,

где wi - вес (weight) синапса, i = 1...n; b - значение смещения (bias); s - результат суммирования (sum); xi - компонент входного вектора (входной сигнал), i = 1...n; у- выходной сигнал нейрона, n - число входов нейрона; f - нелинейное реобразование (функция активации).

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

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

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

На входной сигнал (s) нелинейный преобразователь отвечает выходным сигналом f(s), который представляет собой выход у нейрона. Примеры активационных функций представлены в табл.2 и на рис. 5.



Таблица 2

следующая страница >>
Смотрите также:
Методическое пособие по дисциплине «Многоагентные системы» иуказания к выполнению лабораторных работ Специальность 230102 «Автоматизированные системы обработки информации и управления»
731.46kb.
3 стр.
Рабочая программа по дисциплине: системное программное обеспечение (федеральный компонент блока сд) Направление подготовки: 230100 «Информатика и вычислительная техника»
128.98kb.
1 стр.
Методическое пособие по курсовому проектированию дисциплина: «контрольно-измерительные приборы и аппаратура»
363.75kb.
1 стр.
Рабочая программа дисциплина гсэ. Ф. 08 Правоведение направление 654600 Информатика и вычислительная техника
332.96kb.
1 стр.
1. Задачи курсовой работы 2 Тематика и содержание курсовых работ 3
329.01kb.
1 стр.
Рабочая программа дисциплины «Операционные системы и среды» для специальности 230103 «Автоматизированные системы обработки информации и управления»
223.62kb.
1 стр.
Методические рекомендации для студентов по организации самостоятельной работы Дисциплина: Физика Специальности: 230103 «Автоматизированные системы обработки информации и управления (по отраслям)»
781.04kb.
5 стр.
Специальность 230103 – «Автоматизированные системы обработки информации и управления (по отраслям)»
25.78kb.
1 стр.
Рабочая программа дисциплины «Компьютерная анимация» для специальности 230103 «Автоматизированные системы обработки информации и управления»
188.21kb.
1 стр.
Рабочая программа дисциплина Основы теории защиты информации Направление 654600 Информатика и вычислительная техника
116.93kb.
1 стр.
Учебно-методический комплекс по дисциплине основы экономики уровень основной образовательной программы базовый
1414.03kb.
15 стр.
Прикладная математика", "Автоматизированные системы обработки информации и управления" Москва "Финансы и статистика" 1996
4325.86kb.
38 стр.