Современные тенденции
Творчество без границ
Визуальное программирование и медиа-серверы
Система IRIS EXPLORER

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

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

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

Трехмерность открывает перспективы на пути интеграции визуализации данных с геометрическим моделированием и виртуальной реальностью - характеристики изучаемого процесса или значения данных можно привязать к геометрическим объектам, составляющим моделируемый мир. Например, естественно показывать значения плотности воздушного потока, обтекающего самолет, вместе с его изображением. Большое значение для систем визуализации данных имеет эффективность технологии, поскольку сама по себе визуализация не решает задачу, а служит вспомогательным набором средств и понятий со своим объектным миром, в котором теперь вовсе не обязательно программировать. Системы визуализации данных становятся таким же доступным инструментом повседневной деятельности, как редакторы текстов, графические редакторы или системы черчения.

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

Современные тенденции

В областях, которые традиционно ассоциируются со средствами визуализации (САПР, ГИС) наиболее заметна тенденция к появлению визуального анализа данных - Visual Data Analysis (VDA), представляющего собой интеграцию высокопроизводительной аппаратуры, средств анализа и статистики, с интерактивными графическими технологиями. Данный процесс проявляется в объединении систем САПР, ГИС, СУБД и электронных таблиц с интерактивными средствами визуализации, позволяющими предоставить пользователю всю необходимую информацию и средства коммуникации. По данным InfoCorp в этом году уже более 20 млн. технических специалистов будут охвачены технологией VDA. Для сравнения, в 1994 году лишь 5 млн. инженеров и технологов в США и 8 млн. в Европе активно применяли средства визуализации на своих рабочих местах.

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

Творчество без границ

Одно из основных достижений цифровой революции - оперативная реакция на запросы все большего числа потенциальных клиентов, среди которых совсем необязательно должны быть программисты. Именно поэтому сегодня все больший интерес вызывают системы визуализации, не требующие навыков создания программ и позволяющие пользователю-специалисту в конкретной прикладной области максимально сосредоточиться на решении поставленной проблемы, а не на борьбе с "умным ящиком". Один из таких инструментов - система SGI IRIS DATA EXPLORER, реализованная сегодня на многих платформах, начиная от рабочих станций на базе RISC-процессоров до ПК на платформе Intel в ОС UNIX и NT. Основой системы является стандартный графический интерфейс OpenGL, обеспечивающий реализацию рендеринга.

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

Сгенерированная в модуле Render 3D сцена представляет собой результат выполнения приложения и является не просто картинкой, а виртуальным миром, в котором можно перемещаться, совершать прогулки и полеты, записывая, при необходимости, все изменения на видеопленку. В окне модуля Render работает специальный компонент - визуализатор, обеспечивающий все это. Можно установить дополнительные источники света, отладить их направленность, цвет или интенсивность. Можно также поменять композицию сцены, перемещая и поворачивая участвующие в сцене объекты - и это далеко не исчерпывающий перечень возможностей.

Аналогичные возможности доводилось наблюдать и у пакета работы с нейрокомпьютерными сетями - системы ECANSE, разработанной компанией Siemens. Казалось бы, нейросистемы - сложная и еще не до конца разработанная сфера, а работают с ECANSE специалисты, не имеющие образования в программировании: инженеры тепловых станций, географы и технологи. Это происходит благодаря удачному интерфейсу и правильно подобранной методике визуализации, позволяющей скрыть от пользователя всю махину вычислений и алгоритмов.

Визуальное программирование и медиа-серверы

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

Медиа-сервер - это высокопроизводительный файловый сервер, способный обрабатывать мультимедийные данные: высококачественные аудио- и видеоинформацию вместе с текстом и двоичными данными. Медиа сервер обладает возможностью передавать эти потоки данных множеству пользователей в течение определенного отрезка времени в некоторых случаях в виде постоянного интенсивного потока с последующим считыванием. Объем одной секунды данных в цифровом видео вместе с исследовательскими данными может колебаться между 27 и 32 Мбайт, что составляет примерно 2 Гбайт/мин (или свыше 115 Гбайт/час).

Сегодня на рынке таких систем представлены следующие компьютеры:

  • DEC предлагает свой сервер DEC2100.
  • HP опирается на свои серверы серий "K" и "D" и предполагает в сотрудничестве с Oracle и Sybase разрабатывать системы для работы с большими массивами данных.
  • IBM использует AS/400 в качестве основы для корпоративных серверов мультимедиа, наращивая свою операционную систему OS/400. Рабочие станции RS/6000 представлены на телекоммуникационном рынке.
  • SGI предлагает законченное решение по построению медиа-серверов на базе Challenge S, потенциал которых возрос после появления новых процессоров.
  • Sun инсталлировала программные продукты Stalight StarWorks и Starware в свои SPARC- серверы и планирует использовать в этой сфере UltraSPARC I.

С Дмитрием Волковым можно связаться по телефону: (095) 529-1551.

Система IRIS EXPLORER

В систему EXPLORER входят средства, поддерживающие полный цикл разработки приложений по обработке данных, однако главная роль отводится визуальной компоновке и в этом плане EXPLORER можно отнести к классу систем быстрой разработки приложений (RAD - Rapid Application Development). В пользовательском и программном интерфейсе EXPLORER четко выдерживается объектно-ориентированный подход и модульность. В системе определены всего пять базовых типов данных (Lattice, Pyramid, Geometry, Parameter и Pick) и только с ними может работать пользователь. Lattice - основной тип, используемый для представления визуализируемых данных, содержащий числовые массивы, описывающие сетку, массивы значений и размерности массивов. Тип Pyramid содержит описание иерархии данных типа Lattice вместе с информацией о взаимодействии уровней. Этот тип используется для компактного представления конечно-элементных и молекулярных данных. Тип Geometry описывает геометрическое представление объектов из многоугольников, линий и точек. Parameter - скалярные данные, которые управляют работой приложения и могут интерактивно меняться. Pick - представляет информацию об указываемых на экране точках объектов.

Любое приложение, построенное с помощью EXPLORER, можно рассматривать, как последовательность модулей, применяемых к данным перечисленных типов и полностью воспроизводящую этапы уже приведенной схемы визуализации. На первом шаге входные массивы данных, которые могут быть введены, например, из файлов произвольной структуры, преобразуются в данные типа Lattice или Pyramid. На последнем шаге производится трансформация в тип Geometry, который, собственно, визуализируется. Существуют различные способы такого преобразования, соответствующие разным формам представления данных. Во всей цепочке преобразований участвуют только данные пяти перечисленных параметризированных типов.

Визуально модуль представляется пользователю в виде управляющей панели, которая, в зависимости от требуемой детализации, может иметь три состояния: микро, мини, макси и содержит кнопки входов и выходов - совокупность виджетов, посредством которых вводятся значения некоторых скалярных входных портов: циферблат, слайдер, кнопки, редактор текста; некоторые модули имеют виджет для вывода изображений; кнопку Help для вывода функционального описания модуля. Модули, поставляемые в составе EXPLORER вместе с модулями, самостоятельно разработанными пользователем содержаться в библиотеке на полках, а собственно разработка приложения заключается в компоновке схем из готовых модулей. Для этого нужные модули перетаскиваются с полок в рабочее окно Редактора Схем (Map Editor) и соединяются друг с другом.

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