воскресенье, 23 ноября 2008 г.

Научные журналы по разработке ПО

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

Почему? Все просто: кризис, оптимизация и автоматизация процессов разработки ПО… ну вы меня поняли :)

Возможно, кому-то будут полезны ссылки на ведущие научные журналы в области разработки ПО. Естественно, все на английском. Список журналов экспортирован из delicious.



воскресенье, 26 октября 2008 г.

Научные журналы по агентам

За все время интереса к агентам (это около 5 лет) у меня скопилась коллекция ссылок на журналы, которые тем или иным образом связаны с агентами. Решил привести коллекцию в порядок и поделиться с вами.

Хочу сразу предостеречь -- это серьезные журналы, которые публикуют статьи серьезных дядек! Это значит, что подобная информация может нанести непоправимый ущерб юным пытливым умам и навсегда отвратить их от агентов :)

В общем, я предполагаю, что это информация для тех, кто как минимум прочитал от корки до корки труд Рассела и Норвига (см. Учебники по агентам).



Что ж, после того, как мы распугали слабаков, пора приступить к делу.

Наиболее известным является журнал издательства Springer Autonomous Agents and Multi-Agent Systems (AAMAS).

Ниже я поместил полный список журналов, экспортированный из delicious. Наслаждайтесь!

среда, 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



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

пятница, 26 сентября 2008 г.

Возвращение к жизни

Ну что ж, почти годовой перерыв в жизни блога закончился. За это время многое произошло в моей жизни. Что из этого может быть интересно читателям? Наверное, самое главное: весной этого года я ушел из компании, занимающейся разработкой онлайновых многопользовательских ролевых игр (MMORPG), чтобы посвятить остаток своей жизни агентам.


Сейчас я работаю на кафедре МГТУ им. Н.Э.Баумана. Обучаю студентов разработке программного обеспечения и созданию мультиагентных систем.

Что же касается моих научных интересов, то они остались практически прежними. В данный момент занимаюсь двумя проектами:
  • Применение агентов для анализа и моделирования финансовых рынков. Понятно без слов. Агенство Gartner предсказало, что к 2015 году человечество научится предсказывать поведение финансовых рынков. Что ж, пора помочь мировому сообществу решить эту задачу :)
  • Агенты в 3D виртуальных мирах наподобие SecondLife. Задача заключается в том, чтобы создать агентов, способных действовать в таком мире, манипулировать предметами, общаться с другими агентами и обучаться. Область чрезвычайно перспективная с точки зрения машинного обучения и по прогнозам видных ученых способна ускорить создание сильного ИИ. Это ведь практически робототехника, только без возни с железом (экономия времени и сил), но с огромной человеческой аудиторией, которая действует в таких мирах!
Похоже, данными темами в России, в отличие от Европы и США, не занимается никто. Ну что ж, значит будем пионерами! :)

Возможно, все же кто-то работает в данных областях. Буду рад, если вы свяжитесь со мной.



вторник, 12 февраля 2008 г.

Перерыв продолжается...

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