вторник, 29 июня 2010 г.

Beyond the petaflop: DARPA wants quintillion-speed computers

Beyond the petaflop: DARPA wants quintillion-speed computers

Not known for taking the demure route, researchers at DARPA this week announced a program aimed at building computers that exceed current peta-scale computers to achieve the mind-altering speed of one quintillion (1,000,000,000,000,000,000) calculations per second.


Что же касается России... Недавно попал на "вечер знакомств" седьмой рамочной программы (FP7) по теме "Высокопроизводительные вычисления, технологии программирования, параллельные вычисления". Мероприятие оказалось весьма поучительным.

Во-первых, у министерства хватило денег всего на 3 проекта, по каждой из заявленных тем :)

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

В третьих, из всей России примерно по 0,5 - 1 такому проекту и наскребалось.

В-четвертых, представителей бизнеса было как-то совсем мало. Я бы сказал, нано-мало :)

Все это позволяет сделать неутешительные выводы: высокопроизводительные вычисления реальным игрокам российского рынка не нужны. Моделирование изделия не даст им преимуществ перед конкурентами. Моделировать им просто нечего.

Реально с 90-х и до сих пор работают всего две бизнес-модели.
  • Спекулянты: покупай готовые продукты на Западе и перепродавай в России.

  • Интригаторы: берем западную технологию, и продаем услуги на ее основе -- руссифицируем/настраиваем/интегрируем/сопровождаем...


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

Военным -- не нужны. DARPA у нас нету. Самая реальная, на мой взгляд, инновация в текущих условиях -- надувные танки.



Авиапрому и космосу -- нет. Уровень автоматизации производства в этих областях просто зашкаливает. Дешевле экспериментировать на людях (Марс-500), чем создавать технику.

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

Биотехнологам и фармакологам -- не нужны. Потому что компании производят практически только дженерики.

И так дальше по списку...

P.S. В конкурсной заявке DARPA указано, то требуются принципиально новые вычислительные модели, способные на порядки повысить производительность процессоров. Старье их уже не интересует.

По всей видимости, скоро мы на целые поколения отставать будем вычислительной технике. Как в гражданской, так и в военной.

суббота, 26 июня 2010 г.

Почему мы используем Java?..

...в агентах?
...во всех остальных проектах?
Почему Java -- основа нашего стека технологий?

Все просто!



суббота, 19 июня 2010 г.

Видео: Будущее экономики открытых исходных кодов

Beyond Nerds Bearing Gifts: The future of the Open Source Economy.

Понятное, доходчивое объяснение начинается с вопроса "как объяснить своей теще, что я зарабатываю разработкой свободного ПО?"

Затем, все принимает неожиданный оборот :)

Киберпространство как среда в которой живут и развиваются (усилиями разработчиков) программы, сравнивается с биологической средой. Эволюция, естественный отбор, стратегии выживания...

"В киберпространстве конкурируют не корпорации. Конкурирует софт. За время разработчиков. Если софт не привлекает разработчиков, он становится заброшенным и вскоре удаляется с дисков."



А дальше -- потрясающие аналогии организмов из мира биологии для проприетарного и открытого софта :)

Весьма в духе агентного подхода. Насладите себя! Рекомендую!

воскресенье, 16 мая 2010 г.

Аналитика: Архитектура и реализация JADE

Наш коллектив таки довел до ума аналитический материал по агентной платформе Jade, суммирующий наш опыт ее использования. Теперь, если вы используете Jade не по назначению, не говорите потом, что мы вас не предупреждали :)

Полную версию см. на agentlab.ru Архитектура и реализация JADE.



Здесь же приведу заключение:

JADE одна из немногих платформ, которая полностью реализует стандарты FIPA. Платформа легко расширяется и интегрируется со сторонними системами.

Может быть адаптирована к оборудованию, на котором она будет развернута.

Производительность удовлетворительная. Но по большому счету, принесена в жертву гибкости и интегрируемости.



На основе проведенного анализа, область применения агентной платформы Jade можно охарактеризовать следующим образом:
  • замена/расширение сервис-ориентированной архитектуры (SOA) для систем, в которых требуется больше интеллекта и более сложные взаимодействия между сервисами
  • Semantic Web;
  • rich client приложения, в т.ч. мобильные;
  • подходит для быстрого прототипирования.

В общем и целом попадает в область "не особо нагруженные корпоративные системы".


Агентная платформа Jade НЕ ПОДХОДИТ для:
  • реал-тайм систем;
  • высокопроизводительных высоконагруженных систем, в т.ч. grid;
  • 3D анимации, компьютерных игр, serious games, реалистичных симуляций, виртуальной реальности;
  • моделирования финансовых рынков, социальных и иных систем.

вторник, 11 мая 2010 г.

Лабораторные по агентам. Next Level

Мы неустанно продолжаем совершенствовать учебный процесс в области агентов.

Раньше мы двигались больше на ощупь (Курс МИС, осень 2008).

Однако уже тогда соответствии с принципом открытости учебного процесса мы выложили задания и исходный код выполненных лабораторных работ по агентам в открытый доступ. Каждый архив -- самодостаточный проект Eclipse. Скачиваете, запускаете, наслаждаетесь :) (т.е. download-run-havefun).

Открытость, как было установлено в результате бесчеловечных экспериментов, сильно повышает качество конечного результата работы и преподавателя, и студента.

И, также, мы надеемся, хоть как-то стимулирует интерес русскоязычной аудитории к агентам.

В же этом семестре лабораторные по агентам как никогда соответствуют открытой нашим коллективом концепции мотивации студентов "fun & value".

Студентам на выбор предложено две темы: "Животные" или "Электронная аудитория". Подробнее см. Курс ПЗИС, весна 2010

Те из студентов хочет больше фана, выбирают "игровые технологии" тему "Животные".
  • Животные – изучение мозгов агента на основе архитектуры BDI и языка AgentSpeak. Создаем свой вид животных и смотрим, как они борются за еду.

А кому более интересен полезный вклад в общее дело -- тему "Электронная аудитория".
  • Электронная аудитория – изучение коммуникационной инфраструктуры и модели исполнения агентов на основе платформы Jade. Упрощаем обмен информацией и контроль за ней. Помогаем студентам и преподавателям взаимодействовать во время обучения.

В этом семестре мы хотим продолжить публикацию исходного кода лабораторных работ по агентам. И на подходе уже первая ласточка -- Агент-распространитель (FTP).

А как Вы бы хотели изучать агентов? Или может быть, уже изучали агентов? Вам как студентам были бы интересны подобные задания? Что можно было бы улучшить?

Критика, замечания и предложения приветствуются. Нам важно знать Ваше мнение.

понедельник, 1 февраля 2010 г.

Cамо-тестирующееся ПО

Сегодня мой провайдер (Bigtelecom) оставил меня без доступа в Интернет из-за проблемы в системе биллинга. Несколько лет все работало без сбоев. Система исправно переносила остаток средств с предыдущего месяца в новый. А тут вдруг перестала. Оставив без доступа в Интернет всех своих клиентов. Естественно, клиенты ломанулись на сайт, проверять, в чем же дело и обрушили его в конец.

Давайте зададимся вопросом, почему так происходит? Почему сегодняшние программные системы не могут отслеживать свое собственное некорректное поведение и хотя бы по факту сообщить администраторам об аномалиях?

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

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

Ничего сверхсложного нету. Более того, такие системы известны под названием self-* -- сокращение от self-monitoring, self-optimization, self-replication и т.п. И это не какие-то бесчеловечные эксперименты сумасшедших ученых. Такие системы уже есть на массовом рынке. Например, СУБД IBM DB2 осуществляет само-мониторинг, оптимизацию настроек в зависимости от особенностей использования и нагрузки.

Что такая автономная и самостоятельная система дает для бизнеса? Все очень просто и понятно:

"We only have 3 DBAs supporting over 100 instances of DB2. We didn't even consider Oracle for this application because administrative costs would be prohibitive... it takes 2 DBAs just to manage 3 instances of Oracle"

Кто же виноват в этой ситуации?
Подойдем к вопросу системно. Во-первых, виноваты недоросли-разработчики системы биллинга, которые не доросли до self* систем.



Во вторых, криворукие админы, не протестировавшие свои изменения в системе.



Ну и самый крайний тут -- самый большой начальник компании Bigtelecom, который не вызвал нерадивых админов в 01:00 ночи на работу для исправления багов.


А такое мероприятие оказало бы сильнейшее профилактическое и воспитательное действие на "человеко-машинную систему". Заставило бы админов каждый раз вручную выполнять операции по тестированию, которые не догадались автоматизировать разработчики системы. В результате, для конечного пользователя это выглядело бы как настоящая качественная self-* система :)

Да, совокупность железо-софт-администратор (или ПК-1С-бухгалтер) вполне можно считать единой человеко-машинной системой для добывания денег своему хозяину. Киборги уже среди нас! Это мы с вами, господа! :)



Что делать?
С вопросом "кто виноват?" разобрались. Теперь осталось понять, "что делать?" :)
Об этом -- в следующий раз.