`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Цифровой Кислород

0 
 

Проект цифровой среды будущего, о котором пойдет речь в этой статье, удивителен. До сих пор нам встречались самые разнообразные, но разрозненные технологии. Project Oxygen представляет собой уникальное явление: ученые MIT пытаются сконструировать единое цифровое пространство, которое будет "слушать, понимать и исполнять" любые капризы пользователя.
Благие намерения

С размышлениями о том, что, подчиняясь правилам взаимодействия с компьютерами, мы невольно становимся рабами техники, заложниками образа мышления, навязанного ограничениями, свойственными ПК, вам наверняка приходилось сталкиваться не раз. Более 200 сотрудников различных лабораторий Массачусетского технологического института в полной мере разделяют эти опасения и работают над проектом, плоды которого в ближайшие десятилетия должны изменить компьютеро-центрическую систему. Цифровая вселенная должна вращаться вокруг человека -- такова суть Project Oxygen, если попытаться сформулировать ее одной фразой.

Название проекта отражает его идеологию: прозрачный доступ к информационным ресурсам, столь же повсеместный и столь же незаметный, как воздух.

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

Поясним назначение подсистем на примере. Вы находитесь у себя дома, когда некая организация присылает вам приглашение на конференцию в Ялте. Сообщение попадает в почтовую систему E21s вашего офиса и последняя, ознакомившись с его содержанием, принимает решение немедленно уведомить вас. Она связывается с E21s вашей квартиры и перенаправляет полученное приглашение. Локальная E21s пытается передать информацию своему хозяину, но данные, полученные от сенсоров, расположенных в помещении, свидетельствуют, что вы покинули здание. Посредством N21s домашняя E21s устанавливает соединение с H21s, лежащим в кармане ваших брюк. Услышав призывную трель, вы достаете наладонный компьютер и, ознакомившись с текстом, решаете тут же заказать авиабилет (тем более что внутренние авиаперелеты подешевели в два раза). Проще простого -- надо только сказать об этом вслух, ведь любой H21s оснащен системой распознавания речи!

Оформляя билеты, домашняя E21s сверяется с вашими планами и посредством H21s предупреждает, что день рождения вашего друга отмечается как раз накануне отлета. Офисная E21s тоже вносит коррективы в ваш деловой дневник и самостоятельно переносит встречу с коллегами в баре "Планета Спорт" на следующую неделю (предварительно согласовав дату с их деловыми дневниками). И вот вы уже в комфортном кресле самолета, но неожиданно с ужасом обнаруживаете, что забыли свой доклад дома! К счастью, в сетке, прикрепленной к сиденью следующего ряда кресел, болтается H21s с логотипом "Аэросвит". Вынимаете устройство, которое моментально распознает ваш образ и загружает посредством E21s самолета и спутникового сегмента N21s все ваши привычные установки. Пара манипуляций -- и можно вносить правки в текст доклада.

В целом звучит фантастически, однако это не грезы наяву студентов MIT. Каждый аспект описанной цифровой среды сейчас тщательно разрабатывается специалистами института. Более того, многие технологии уже готовы для внедрения или хотя бы первых экспериментов.


E21s

За кратким сочетанием букв и цифр скрывается сложнейшее сплетение современных технологий. Назначение E21s -- образование интеллектуальной среды, начиненной сенсорами и средствами отображения информации. Как правило, такие среды будут находиться внутри зданий, на территории кампусов, в транспорте. Образный аналог E21s -- беспроводные сети стандарта 802.11. Как только пользователь, имеющий персональное вычислительное устройство, снабженное картой радиомодема, попадает в зону действия сети, ему становятся доступны все ее ресурсы. Аналогичным образом функционирует E21s, но благодаря гибкой системе именования узлов, технологиям распознавания речи и образов, общение с интеллектуальной средой будет происходить более естественным образом. Теперь не надо таскать за собой тяжелый ноутбук: обратитесь на своем родном языке к любому свободному терминалу и начинайте работу. С тем же успехом можно использовать и любой подвернувшийся мобильный H21s: машина опознает вас визуально, загрузит ваши конфигурационные файлы или подсоединится к вашей домашней или офисной E21s.

Фактически мобильные устройства и стационарные системы являются братьями-близнецами: они используют единый набор технологий, ПО и даже могут утилизировать общую аппаратную платформу. Различие заключается в количественных показателях, скажем, в вычислительной мощности и коммуникационных возможностях. Кроме того, E21s опекает все H21s, находящиеся в зоне досягаемости, обеспечивая им доступ к ресурсам той цифровой среды, в которой они находятся в данный момент. Например, в аэропорту ваш PDA будет играть роль справочного бюро, а в ресторане позволит оформить заказ, без подзыва официанта и перелистывания меню.

Первым воплощением E21s стала "Интеллектуальная комната" (Intelligent Room). Общение посетителя с "комнатой" происходит максимально естественным для него путем -- с использованием речи и жестов. Поэтому неудивительно, что составляющими элементами проекта стали технологии распознавания речи, детектирования движений рук и положения головы человека, а также информационный менеджмент.

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

Чтобы пространство стало полноценным партнером для пользователя, у "комнаты" должна быть выработана линия поведения по отношению к людям. E21s следует быть в курсе правил этикета и обычаев, связанных с общением. Эта функция возложена на так называемую "систему реагирования на посетителя" (Reaction Behavioral System).

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

Еще две темы, разрабатываемые в рамках проекта, чрезвычайно близки: одна из них касается разделения ресурсов между многими посетителями одного пространства, другая -- затрагивает вопросы безопасности. Разделение ресурсов является далеко не очевидной проблемой, ее предполагается решать, создав нескольких виртуальных "представителей", посредством которых и будет происходить общение с пространством. К этой же категории отнесена проблема перемещения рабочего окружения и настроек конкретного посетителя между различными пространствами. Тот факт, что хранение и обработка всей информации, в том числе и конфиденциального свойства, осуществляется на базе общедоступных вычислительных и коммуникационных систем, сам по себе уже повод задуматься о безопасности данных.

Визуально-голосовой интерфейс, мягко говоря, не располагает к одновременной работе множества людей в ограниченном пространстве, так что тут еще есть над чем подумать. Другое дело -- коллективное обсуждение и "интеллектуальная комната", играющая сервисную роль "принеси-подай-молчи-пока-не-спросят". Необходимое программное обеспечение под рабочим названием MeetingManager находится в разработке.

Возможное решение вопроса конфиденциальности и комфортности взаимодействия с E21s -- интерактивные киоски. Intelligent Kiosk k22 разрабатывается сейчас в недрах лабораторий MIT и представляет собой обособленную точку доступа ко всем функциям пространства.

Группа мешающих друг другу посетителей -- это полбеды. Сделать так, чтобы множество приложений, обеспечивающих функционирование пространства, смогли бесконфликтно уживаться на единой аппаратной платформе -- далеко не такая простая задача, как кажется. Поэтому участникам проекта пришлось заняться созданием менеджера системных ресурсов Rascal -- Resource Manager For The Intelligent Room.

Облегчить доступ к хранящимся в системе пользовательским данным призваны различные вспомогательные средства. К ним относятся FIRE (Friendly Information Retrieval Engine) и Haystack. Первый из упомянутых модулей отвечает за поиск в Internet, и в идеале будет придавать некий смысл тому беспорядочному нагромождению ссылок, которое сегодня является результатом обращения практически к любому современному поисковому узлу. Ну а Haystack заслуживает отдельного материала -- это персональный информационный менеджер интеллектуальных пространств.

И, наконец, каждая "комната" будет оснащена Help System -- вспомогательным обучающим модулем, который поможет посетителю сориентироваться в "начинке" пространства. Разрабатывая свою систему помощи, Энди Чанг (Andy Chang) полагался на опыт предшественников. В частности, ранее была написана и эксплуатировалась программа Alice, базировавшаяся на принципе самообучения. К сожалению, процесс накопления "критического" объема знаний происходит очень медленно, и модуль так и не удалось довести до необходимой "кондиции".

Если вы полагаете, что в обязанности Help System входит только обучение новичков, это не так. Функциональность системы гораздо шире, к ее юрисдикции относится и такое сугубо внутреннее дело, как ведение документации: "интеллектуальная комната" усложняется, увеличивается количество модулей, растет число разработчиков, затрудняется взаимодействие между отдельными коллективами. В некоторых случаях система помощи сыграет роль презентационного средства, своеобразная самореклама -- проблема завышенной самооценки -- теперь касается и компьютеров. Являясь универсальным контейнером, содержащим всю информацию относительно E21s, Help System в состоянии рассказать о ее возможностях без помощи сотрудников Массачусетского технологического института. Данные хранятся в формате XML и обрабатываются пакетом Sun JavaHelp. Вывод осуществляется с помощью видеопроекторов, дисплеев; обратная реакция пользователя регистрируется посредством видео- и аудиоподсистем. Интерфейс реализован с использованием технологии агентов MetaGlue (подробно о них -- чуть ниже), благодаря этому обработка и отображение информации, извлеченной из централизованной БД знаний, могут вестись на нескольких терминалах одновременно.


H21s

Мобильные терминалы -- один из трех китов, на которых базируется "Проект Кислород". В отличие от современных PDA, чья концепция подразумевает "все свое ношу с собой", H21s имеют минимальный объем внутренней памяти, где хранятся только программы, реализующие максимально широкий набор функций. Аппаратная платформа столь же многообразна: предусмотрены видео-, аудио-, инфракрасный и радиоинтерфейсы, что дает устройству возможность общаться как с людьми, так и со своими "собратьями". Подобно хамелеону, по голосовой команде мобильный терминал за долю секунды способен превратиться в мобильный телефон, Web-планшет, видеоплейер или текстовый процессор. Необходимые данные и ПО будут загружены из N21s или получены от ближайшей E21s. Таким образом, основное требование к H21s -- соответствовать моменту.

Большинство функций, которые обычно возлагаются на аппаратную платформу, здесь выполняются программно. С одной стороны, это имеет свои плюсы, например повышаются гибкость и функциональность системы. Чтобы декодировать новый аудиоформат, достаточно загрузить новый кодек, а подключение к новой радиосети происходит за считанные секунды без необходимости апгрейда устройства. С другой стороны, подобная универсальность требует существенных затрат процессорной мощности. Поэтому, хотя первые экспериментальные модели были построены на базе обычного StrongArm, сейчас ученые решили перейти к специально спроектированным процессорам потоковой архитектуры Raw. Очень интересна стратегия временной "выгрузки" наиболее ресурсоемких задач на ближайший E21s -- просто, а главное, логично.

В данный момент в качестве экспериментальной платформы используется гибрид, сконструированный из стандартного Compaq iPAQ с модулем расширения, инсталлированным в разъем BackPAQ. Устройству дано более человеческое, чем H21s, имя -- Handy21. Несмотря на довольно скромный процессор, 200 MHz архитектуры StrongArm, дополнительные компоненты, вошедшие в состав модуля расширения, превратили хотя и очень популярный, но, тем не менее, рядовой PDA в нечто большее. В скромном по размерам модуле уместились цифровая видеокамера, акселерометр, перепрограммируемый чип FPGA, аудиочип, выход на наушники, а также два разъема формата PCMCIA. В один из разъемов подключаются адаптеры беспроводной связи, в другой -- дисковые накопители (наверное, имеются в виду устройства наподобие IBM Microdrive). Работает Handy21 под управлением ОС Linux.

Воплотить в жизнь на первый взгляд фантастические идеи позволят несколько ключевых технологий. Мы остановимся на них весьма кратко, так как все они заслуживают самого пристального рассмотрения, что и будет сделано в отдельных публикациях. Поскольку недостаточная вычислительная мощность миниатюрных наладонных компьютеров уже стала притчей во языцех, ученым пришлось применить новый вид архитектуры -- Raw (Raw Architecture Workstation). Новизна заключается в единстве двух противоположностей -- специализированного ASIC-подобного, но перепрограммируемого чипа. Известно, что специально разработанные и оптимизированные для выполнения определенного вида операций микросхемы при значительно меньшей частоте справляются со своими задачами гораздо лучше высокочастотных универсальных собратьев. Предоставить программе возможность динамически реконфигурировать аппаратные ресурсы чипа -- в этом и состоит суть RAW.

Еще одной бедой, упорно преследующей разработчиков портативной техники уже десятилетие, является низкая емкость существующих типов аккумуляторов, а также прожорливость сложных интегрированных чипов. Scale (Software-Controlled Architectures for Low Energy) -- такое кодовое имя носит "ответ Чемберлену", сочиненный специалистами лаборатории Computer Architecture Group. Они решили задачу весьма своеобразно -- написали компилятор, собирающий информацию о потенциально ресурсоемких фрагментах приложения еще на момент трансляции. Эти сведения затем помогут правильно оценить энергоемкость различных участков кода.

Главная задача H21s -- воспроизведение, передача и кодирование потоковой информации, поэтому третьей основополагающей технологией проекта стал компилятор StreamIT. Продукт является наследником пакета StreamWare, долгое время совершенствовавшегося в недрах MIT. Дети обычно превосходят своих родителей, и StreamIT, по словам его создателей, подтверждает извечную истину -- эффективность сгенерированного кода для некоторых применений повысилась в 10 раз. Специализация компилятора -- трансляция аудио- и видеопотоков, программная коммутация, реализация функций сотовой связи.


N21s

Знаете ли вы, какой должна быть идеальная сеть? Полагаю, что ответ окажется чрезвычайно похож на спецификации системы N21s. Эта сеть прозрачно свяжет удаленные узлы, используя все доступные для этого коммуникационные каналы: спутниковые, радио, наземные. При этом в каждый момент времени N21s будет искать "кратчайший" путь для передачи трафика. Тип канала связи должен соответствовать требованиям приложения: если передается потоковое видео, то лучше воспользоваться услугами надежного и производительного соединения. С другой стороны -- чтобы отправить текстовое электронное письмо, нет необходимости занимать ресурсы GPRS- или ADSL-канала.

Умные мысли приходят в головы умным людям одновременно -- вслед за Николасом Фемстером (Nicholas Feamster), благодаря которому в потоковой технологии DivX появилась прямая связь между приложениями (сервером трансляции) и стеком TCP/IP, ученые MIT решили внедрить подобную тактику и в системе N21s. Очевидно, что приложение имеет больше возможностей по адаптации данных к характеристикам сети, чем нижележащий протокольный уровень. Передавать информацию о состоянии соединения, сетевых заторах, изменении пропускной способности или частоте появления ошибок прикладному уровню -- вот реальный способ разрешить очевидное противоречие между фиксированными требованиями потоковых данных к пропускной способности и нестабильностью беспроводных пакетных сетей.

Клиенты и серверы N21s всегда подбирают параметры соединения согласно реально наблюдаемым условиям, а не исходят из "наихудшего варианта". Сегодня драйверы и кодеки обычно применяют одни и те же алгоритмы упаковки и коррекции ошибок ко всем соединениям вне зависимости от их состояния. На самом деле имеет смысл соблюдать разумный компромисс между производительностью, надежностью и энергоемкостью, выбирая оптимальный набор параметров для каждого канала связи индивидуально.

Наконец-то в основу системы сетевых имен решено положить здравый смысл. Конечно, здравый с точки зрения человека. В N21s обратиться к ближайшему факсу можно используя адрес "ближайший факс", без утомительного выведения обычной в таком случае абсолютной сетевой иерархии начиная от "царя Гороха", т. е. от корневого узла сети. Ученые есть ученые, поэтому способу называть вещи своими именами дано умное определение -- "intentional names".

Чтобы сеть смогла найти общий язык с человеком, ей потребуется хотя бы элементарный интеллект, а также информация о текущем состоянии окружающего мира. Например, важную роль в поиске "ближайшего факса" играет функция определения географического положения клиента. В целом поддерживаются две стратегии разрешения связей между именем и адресом: раннее связывание, ориентированное на потоковые ресурсоемкие приложения, и позднее -- для ориентации в динамической структуре сети N21s. Пока никому не удалось "вбить в голову" компьютера даже элементарное представление о "здравом смысле" ("Cyc -- интеллектуальный ассистент"). Как далеко продвинулись в этом направлении ученые MIT, вы узнаете из отдельной статьи.

Вдобавок ко всему N21s строится по принципу шины USB, и горячее подключение/отключение узлов будет отрабатываться сетевой инфраструктурой автоматически. Идеология более чем актуальная, учитывая динамику беспроводных соединений. Очевидно, для поддержки E21s в структуру сети введены "пространства коллективной работы" -- collaborative regions. Подключение к ним происходит динамически: как только вы переступите порог офиса, ваше мобильное вычислительное устройство автоматически авторизуется в корпоративном пространстве, что откроет доступ к электронной почте, чату, внутренней системе мгновенных сообщений и прочим общим локальным сетевым ресурсам. Чтобы реализовать разграничение доступа и обеспечить надлежащий уровень конфиденциальности, взаимодействие с узлами, авторизованными в пространстве и неавторизованными (внешними), происходит на разных языках-протоколах. Кроме того, каждое пространство можно снабдить набором правил, которые устанавливают права доступа и прочие вопросы безопасности.


На заднем дворе

Фасад "сказочного" дворца Project Oxygen мы уже более или менее подробно рассмотрели. Однако создать системную основу для такого сложного проекта -- труд воистину титанический. Но, тем не менее, его выполняют десятки инженеров и программистов в лабораториях Массачусетского технологического и не только.

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

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

Задача взаимодействия клиентского и сервисного ПО (можно было бы написать "серверного", но это было бы чересчур узкое для Project Oxygen определение) решается промежуточным слоем MetaGlue. Написанный на Java программный интерфейс занимается вопросами доступа клиентских (мобильных) приложений к системному ПО информационной среды и разделения ресурсов между множеством конкурирующих пользователей.

Контролировать программную среду, сделать ее безопасной позволяет компонент CORE (Communication-Oriented Routing Environment). Эта подсистема ведает коммутацией данных от приложения к приложению, она отслеживает и запоминает путь их следования вдоль всей системной архитектуры. Таким образом, как только происходит сбой, появляется возможность выполнить "обратную трассировку" и вернуть систему в исходное состояние. CORE призвана облегчить процесс тестирования новых приложений и устройств в "боевых условиях".

Сетевая инфраструктура Project Oxygen базируется на программных маршрутизаторах -- Click. Основное их преимущество перед аппаратными -- гибкость, интеллектуальность и простота модификации алгоритмов. Завершает архитектурный комплекс объектно-ориентированное хранилище данных Thor. Грозное название, созвучное имени главного бога скандинавской мифологии, дано ему неспроста. В компетенции системы не только коллекционирование информации, но и выполнение апгрейда программных компонентов "на лету". Хранилище поддерживает технологию SUDS (Software Upgrades in Distributed Systems), что обеспечивает автоматическое обновление объектов, размещенных в БД.


На этом краткий обзор "Проекта Кислород", пожалуй, закончим. Не знаю, как ваше, но мое любопытство он едва ли удовлетворил на несколько процентов. В статье удалось лишь обозначить важнейшие технологии, а суть их осталась скрытой. Но, используя данный материал как карту, можно попытаться двинуться дальше, чтобы не только понять -- имеет ли смысл затея, но и присмотреться поближе к некоторым разработкам, которые уже сегодня заслуживают немедленного внедрения в реальных продуктах и товарах.
0 
 

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT