KNOW INTUIT, Лекция, Запознаване с JADE

Предназначение на лабораторията

intuit

Презентацията на лабораторията можете да изтеглите от тук.

Ще се запознае с мултиагентната платформа JADE, ще инсталира платформата на работещ компютър, ще овладее протокола за прехвърляне на данни между агентите на платформата, стартирането на основния контейнер на платформата и нов агент, използвайки примера на агенти "PingAgent" - заявка-отговор.

Указания за изпълнение на лабораторна работа

Подготовка

Преди да започнете, трябва да стартирате Eclipse IDE, да изтеглите и инсталирате JDK и JADE. Има два начина за стартиране на платформата: от командния ред или в средата за разработка. Както в предишните лаборатории, ще използваме средата за разработка Eclipse IDE. За да стартирате от командния ред, трябва да се обърнете към инструкциите на официалния уебсайт на платформата JADE на връзката: http://jade.tilab.com/doc/index.html.

За да започнете с JADE, трябва да инсталирате JDK и да стартирате Eclipse IDE (вижте Лабораторна работа 1). В Eclipse IDE създайте работна директория и отворете нов Java проект. След това отворете нов java файл, в който ще напишем кода на агента.

Преди да създадем агент, трябва да инсталираме платформата JADE. Можете да изтеглите архива с платформата от официалния сайт на JADE на линка: http://jade.tilab.com/. Но ще трябва да се регистрирате и да получите потвърждение за регистрация по имейл. Изтеглете най-новата версия на платформата. Разархивирайте архива и го отворете. Архивът съдържа 3 папки:

  • JADE-bin-4.X - папка с изпълними файлове;
  • JADE-bin-4.X - папка с изпълними файлове;
  • JADE-example-4.X - папка с примери.

В резултат на това получаваме готова платформа. Проверете местоположението на файлове като:

  • build.xml – намира се в корена на папката Jade (създадена от нас);
  • jade.jar - намира се в папката lib/;
  • изходните папки examples/ и jade/ са в src/.

Завършване на работата

За да стартирате платформата, трябва да стартирате Eclipse IDE, да създадете нова работна среда и да отворите нов Java проект в нея (фиг. 6.10).

лекция

След това отидете в прозореца за създаване на проект, задайте име и щракнете върху Напред. В следващия прозорец трябва да свържете библиотеките на Jade към нашия проект (фиг. 6.11)

know

За да свържете библиотеки, щракнете върху Добавяне на външни JAR файлове и посочете пътя към библиотеките. Те се намират в папката \lib, където са копирани всички архивни файлове на платформата Jade. След това щракнете върху Готово.

intuit

Сега библиотеките на JADE са свързани с проекта. Създайте нов агент от примера "PingAgent". За да направите това, трябва да създадете нов клас в папката \src (фиг. 6.12).

Сега въвеждаме информацията, създаваме нов клас в папката Project / src в пакета sprintintel с името PingAgent. Също така на този етап трябва да напишете следната информация в полето "Суперклас": java.lang.Agent и щракнете върху Готово.

Сега имаме нов агент и необходимите библиотеки са свързани. Необходимо е да зададете програмния код на Агента. За да направите това, отворете PingAgent.java от папката examples\PingAgent, която се намира в директорията, където са разопаковани Jade архивите. Копираме цялото съдържание на примера на нашия агент. Нека да разгледаме кода на нашия агент, той има грешки, които трябва да бъдат коригирани (фиг. 6.13).

Тази грешка е съвсем разбираема. Трябва да коригираме името на пакета, което използваме. В нашия случай това е sprintintel. След това не забравяйте да запазите промените във файла на агента.

За да стартирате агента имултиагентна платформа, отидете в менюто Run Configuration. В него добавяме нова конфигурация за стартиране на Java приложение. На фиг. 6.14 и фиг. 6.15 показва параметрите на основния клас (MainClass) - jade.Boot и се вижда името на този проект. В полето Програмен аргумент на раздела Аргументи въведете стойността "–gui". Така решихме, че трябва да стартираме платформата и основния контейнер, който вече съдържа допълнителен клас на нашия агент PingAgent.

know

know

Кликнете върху бутона Run и стартирайте нашата платформа. Платформата работи и можем да видим потребителския интерфейс, работещ с платформата и двата основни агента AMS и DF. За да добавите нашия агент "Ping" към основния контейнер, трябва да отидете в раздела Действие и да добавите нашия клас агент (фиг. 6.17).

запознаване

запознаване

Нашият агент вече е в основния контейнер. Каква е същността на агента в примера с PingAgent? Основната задача на този агент е да изпрати отговор под формата на думата "Ping" на заявка под формата на думата "Pong". В кода тази част изглежда така:

Сега нека проверим работата на нашия агент и му изпратим заявка с помощта на DummyAgent - готов агент с потребителски интерфейс, чрез който е възможно да изпращате съобщения до други агенти и да получавате отговори от тях. За да стартирате DummyAgent, трябва да щракнете върху бутона StartDummyAgent в реда с бутони за бърз достъп в потребителския интерфейс на платформата. В самия Агент е необходимо да направите заявка в правилната форма, както е показано на фиг. 6.18

know

intuit

За да улесните проследяването на изпращането на съобщения, можете да стартирате друг агент Sniffer, който показва изпратените съобщения между агентите със стрелки (фиг. 6.20).

intuit

Задачи за самостоятелна работа

  1. Създайте друг агент Ping1 и изпратете заявка до двама агенти едновременно
  2. Променете текста на съобщението за заявка и отговор.
  3. Създайте Container1 (не основния) и създайте агент в него.
  4. Стартирайте агенти в примерната папка src/examples/bookTrading.

В тази глава бяха описани основните принципи на разработване на многоагентни системи и беше анализиран пример за работа с платформата JADE.