среда, 15 октября 2008 г.

А Вы сделали лабы по агентам?

Преподавательская деятельность захватила меня сейчас с головою. Изо всех сил читаю курс по мультиагентным системам и веду лабораторные работы. Уже 5 лет так или иначе связан с агентами, из них 3 последних года читаю студентам курс по агентам в МГТУ им. Баумана... Определенно, это срок :)

Раз писать больше не о чем, напишу про эти самые лабораторные работы :) Возможно кто-нибудь найдет что-то полезное для себя.

Цель -- на практике познакомить студентов технического ВУЗа с технологией агентов.



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




Агенты создаются на языке Java (Java SE 6) в среде разработки Eclipse для агентной платформы Jade.

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

Оформление
Приводятся требования к единообразному оформлению исходного кода (комментарии, именование и т.п.), файловой структуре проекта.

Сдача
В связи с тем, что сразу сделать как надо и в срок в разработке ПО не получается практически ни у кого, будут как минимум 2 итерации приема задания.

Доктор Франкенштейн


Чат-бот
Сделать агента чат-бота на основе AIML (наподобие A.L.I.C.E.). Агент может получать от другого агента строку с предложением и отправлять обратно строку с ответом. Реализовать простейшую базу знаний агента.

Монитор производительности Java-машины
Сделать агента, предоставляющего информацию о производительности ява-машины (используемая память). Использовать подписку на периодическое получение информации.

Агент-преследователь
Тестирующий агент перемещается случайным образом каждые 10 сек в новый контейнер. Интерфейсный агент периодически проверяет раз в 10 сек, находится ли он на одном компьютере с тестирующим агентом. Если нет, то перемещается на контейнер к тестирующему агенту.
Оба агента имеют GUI-окна, которые также перемещаются на другие машины. Чтобы можно было видеть визуально, что агенты переместились на новый контейнер.

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

Новостной агент
Агент периодически получает новости об определенной компании по RSS с Yahoo! Finance. Затем он их посылает новости подписавшемуся на них тестовому агенту.

Агент-семантик
Агент-семантик получает от агента-тестера текст, который перенаправляет веб-сервису, добавляющему в него семантическую разметку. Затем агент-семантик отправляет полученные результаты обратно агенту-тестеру.
В качестве веб-сервиса использовать http://www.opencalais.com



Что Вы думаете по поводу заданий, их сложности, тематики, целей, средств? Любые предложения приветствуются.

1 комментарий:

  1. Анонимный22.10.2008, 22:50

    Спасибо за инфу!Я сейчас как раз пишу магисторскую работу по МАС, наткнулась на Ваш блог, много ценных идей почерпнула:)Хороший блог!

    ОтветитьУдалить