четверг, 25 октября 2007 г.

С чего начать изучение агентов разработчику?

Предположим, что вас неведомо каким образом заинтересовали интеллектуальные агенты и мультиагентные системы. Или вы услышали о них в разработке компьютерных игр, или вас заинтересовали друзья, или случайно прочли в Интернет... Не суть важно. Рассмотрим более интересный вопрос: "Что же делать дальше и как с этим жить?"



Для начала вооружимся двумя цитатами.
  • "Истинное знание -- знание причин" (Г. Галилей).
  • "Нет ничего практичнее хорошей теории" (Л. Больцман).

Вообще, вопрос оптимального сочетания теории и практики в обучении инженеров сам по себе отдельная интересная тема. Любопытствующим могу порекомендовать (Parnas et al., 2002).

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

Практические же навыки помогают узнать возможности и ограничения современной технологической базы: инструментарий, языки программирования, характеристики аппаратной части. Которая может совершенно измениться за 2-4 года.

Понятно, что если вы пишете очередную CMS или собираете корпоративную систему из готовых компонентов, эти вопросы вас не сильно волнуют. За вас уже практически все продумали. Дай бог, чтобы вы вообще хоть раз провели нормальное нагрузочное тестирование ;) Вообще, меня просто поражает, насколько современные технологии развращают прикладных программистов!

Однако, в таких областях, как обработка сигналов, разработка ИИ, computer science, data mining и им подобных такой трюк не проходит. Не проходит он и в инновационных областях информационных технологий. Но это уже не про нас (т.е. не про Россию). Надеюсь, что при моей жизни в России появится различимое невооруженным глазом число инновационных компаний, которые хоть что-то систематически тратят на научные исследования, а не только на PR.


Заканчиваю занудствовать ;) и перехожу к сути поднятого вопроса. Где же найти информацию о том, что такое агенты и чего они могут?

Хорошим и единственным системным трудом по агентам на русском языке является (Рассел и др., 2007). Однако, этот труд имеет некоторый уклон в ИИ и теорию.

Классикой в области агентов считается (Wooldridge, 2002). Эта книга также из серии "обо всем понемногу", но чуть более приближена к практике.

Я рекомендую прочесть их обе и полностью до начала любой разработки агентной системы. После прочтения вы будете иметь представление обо всех основных механизмах, лежащих в основе агентов и МАС. Будете знать, где найти дополнительную информацию.


Что же до практических знаний и навыков, то я настоятельно рекомендую изучить платформу JADE, как наиболее часто используемую в настоящее время. Под "изучить" я понимаю ознакомление с документацией и примерами. Также недавно вышла единственная книга по JADE (Bellifemine et al., 2007).

Вот собственно и все. Happy innovating, dudes!!! ;)



F.L. Bellifemine, G. Caire, и D. Greenwood. Developing Multi-Agent Systems with JADE. Wiley, 2007.

D.L. Parnas, P. Eng, и M. Soltys. "Basic Science for Software Developers," Dept. of Computing and Software, Faculty of Engineering, McMaster Univ., Hamilton, ON, Canada.[Online] Report, 2002.

M. Wooldridge. Introduction to MultiAgent Systems. Wiley, 2002.

С. Рассел и П. Норвиг, Искусственный интеллект. Современный подход. Вильямс, 2007.

вторник, 16 октября 2007 г.

Лекция 5. Стандарты FIPA. Агентная платформа JADE

Подготовлена лекция №5 по курсу "Мультиагентные интеллектуальные системы".

Часть 1. Стандарты FIPA (презентация FIPA в PDF на английском).
Часть 2. Агентная платформа JADE (презентация PowerPoint на русском).

Затеянный на прошлой лекции обзор основных направлений ИИ все еще не готов ;)

воскресенье, 14 октября 2007 г.

Куда пойти работать спецу по интеллектуальным агентам в России?

Некоторое время назад, при подготовке лекций, я заинтересовался этим вопросом. Мне, как преподавателю, конечно, не интересно работать «в песок»: когда студенты, прослушав курсы о мультиагентных системах, ПРОЛОГе и представлении знаний в одном из ведущих инженерных ВУЗов страны, идут затем писать SQL-запросы в банк.

Против банков или php/MySQL я ничего не имею, весьма полезные достижения человечества. Однако согласитесь, слова «банк» (а особенно «российский банк») и «инновации» сочетаются весьма плохо. Видимо, специфика деятельности заставляет их использовать только проверенные решения. Плюс недоразвитость российского рынка… Вот и получается, что даже услуги управления счетом через интернет предоставляют единицы.

Создание мультиагентных систем достаточно инновационная область разработки ПО. Можно сказать, передовое направление не только в разработке ПО, но и в искусственном интеллекте в целом. Посмотрим же, как обстоят дела с использованием агентов в бизнесе на Западе (см. табл).




Крупный бизнес на Западе


Название

Страна (город)

Профиль

IBM

США

Управление серверами

Rockwell Automation

США

Автоматизация производства

Motorola

США

Мобильная связь

Telecom Italia

Италия

Связь

British Telecom

Англия

Связь

NTT DoCoMo

Япония

Мобильная связь



Мелкий и средний бизнес на Западе


Название

Страна (город)

Профиль

Agentis

США (Атланта)

Корпоративные информационные системы

Agent Oriented Software Group

США, Англия, Австралия

BDI-система для военных и промышленных применений

Whitestein

Швейцария, Словакия, Германия

Логистика, телекоммуникации, финансы

Lost Wax

Англия (Ричмонд)

Электронная коммерция

Y'All

Голландия

Логистика

Savannah Simulations

Швейцария

Моделирование

MP Objects

Голландия, Германия, Лондон

Логистика

MASA-SCI

Франция, США, Сингапур

Моделирование

NewVectors

США

Логистика, моделирование , бизнес-анализ

21CSI

США

Поддержка принятия решений


И это далеко не полный список. В общем, можно сказать, что инновационный бизнес на Западе цветет и пахнет, и в настоящее время загибаться не собирается. Не смотря на спад после ажиотажа 2004-2005гг. Не смотря на безвременную кончину в 2005 году замечательного европейского проекта AgentLink, который пытался ускорить внедрение агентных технологий в промышленность.

Обратим теперь свой алчный взор на отсталую Россию (см. табл.).




Бизнес в России


Название

Страна (город)

Профиль

LUXOFT, R&D?

Россия (Москва)

Моделирование

НПК Генезис знаний

Россия (Самара)

Социальное моделирование и DataMining

Magenta Technology

Россия (Самара), Англия (Лондон), США

Логистика, решения для Web




Мда… не густо. Но и не все так печально, как могло бы быть. Из трех копаний две расположены в Самаре. Видимо, климат там подходящий для взращивания агентов ;)

О «НПК Генезис знаний» я не знаю практически ничего, кроме того, что они с 2003 по 2008 год пытаются внедрить агентов в администрацию Самарской области ;) а именно, мультиагентную систему управления регионом. Большой брат следит за вами ;) Подробнее можно посмотреть здесь http://www.elrussia.ru/files/39360/%D1%E0%EC%E0%F0%E0.html

«Magenta Technology» имеет штаб-квартиру в Лондоне, а центр разработки в Самаре. Один из первых их проектов – мультиагентная система управления перемещением нефтяных танкеров.

Об агентах в Москве (и инновационных разработках вообще) можно сказать только то, что всерьез ими тут никто не занимается. Я имею в виду, в промышленности или в бизнесе. То ли климат не тот, то ли девелоперы глупее, то ли денег и так всем хватает без рискованных инноваций.

Единственное исключение – компания LUXOFT. Но они молчат как партизаны о своих секретных лабораториях, как корпорация Umbrella в Resident Evil ;) Единственное упоминание об их секретных разработках мне удалось найти на российском отраслевом портале индустрии компьютерных игр http://www.dtf.ru/person/info.php?id=1751 что само по себе весьма странно %)


Я буду рад ошибиться на счет Москвы, т.к. тема агентов в московском регионе волнует меня чрезвычайно ;)

  • Как человека, принимающего участие в подготовке кадров в области разработки агентов.

  • Как человека, ведущего R&D разработки в данной области.

  • Ну и просто как желающего трудоустроиться в данной области, если вдруг российская наука окончательно развалится ;)

Если у вас есть информация – обязательно свяжитесь со мной!

вторник, 2 октября 2007 г.

Лекция 3. Агенты и их виды

Подготовлена лекция №3 "Агенты и их виды" по курсу "Мультиагентные интеллектуальные системы". Формат лекции все тот же: презентация PowerPoint + аудио с пояснениями к тем слайдам, которые этого требуют. Все в архиве занимает около 25 Мб. Взять можно на кафедре.

Комментарии по форме и содержанию все также приветствуются.

Краткое содержание лекции:
1 Агент и его свойства
2 Агентные среды и их свойства
3 Теория одинокого агента
4 Виды агентов (архитектуры агентов)