77363

ПОИСК НОВЫХ ПОДХОДОВ К ВИЗУАЛИЗАЦИИ ПРОЦЕССОВ

Научная статья

Информатика, кибернетика и программирование

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

Русский

2015-02-02

33 KB

1 чел.

ПОИСК НОВЫХ ПОДХОДОВ К ВИЗУАЛИЗАЦИИ ПРОЦЕССОВ

В.Л. Авербух, И.О. Михайлов, П.В. Небогатикова

ИММ УрО РАН, УрФУ

Екатеринбург

Важная проблема разработки систем компьютерной визуализации связана с выбором методов представления данных, возникающих в связи с описанием сложных процессов. Традиционные методы не всегда удовлетворяют новым задачам. В последнее время появился целый ряд работ с использованием для этих целей новых подходов, основанных зачастую на весьма нетривиальной математике. Такие подходы появляются в различных областях компьютерной визуализации (см., например, [1,2]). Отметим, однако, что интерпретация графических выводов в этих случаях также нетривиальна и требует не многим меньших усилий, чем разработка соответствующих видов отображения. Нужен дополнительный поиск более простых метафор визуализации, позволяющих более эффективно анализировать абстрактные данные.

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

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

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

Такой подход можно описать метафорой «машина времени». Отметим, что использование метафоры «машины времени» не требует знаний источника (научно-фантастических романов).

Нами разработан прототип визуализационной составляющей системы представления параллельных процессов, которую можно будет использовать в отладочных целях. Образность при визуализации процессов – трехмерная. Процессы представляются в виде цветных цилиндров, связанных между собой тонкими «нитями». (Аналогично визуальному представлению в системе VisuaLinda [3].) По нитям движутся шары, представляющие данные. С помощью цветов описывается состояние процесса. Пользователь может перемещаться по оси времени и менять состояние процессов.

Метафора «машины времени» может использоваться также при разработке систем научной визуализации, при представлении сложных физических (химических, биологических и пр.) процессов. От стандартной метафоры проигрывателя такие реализации отличаются возможностью задания событий-изменений, которые описываются “эффектом бабочки”. Этот эффект заключается в том, что казалось бы маловажное событие приводит к изменению хода процесса. Данная научная метафора используется, например, в работах, посвященных хаотическим [некорректным] системам, где малое изменение начальных условий влечёт большой и часто непредсказуемый эффект. При реализации прототипа системы научной визуализации на базе метафоры «машины времени» используются естественные типы образности.

В системах визуализации программного обеспечения параллельных вычислений внутренние структуры единичного процесса отображается, как правило, в текстовом виде. Традиционно под визуализацией понимаются исключительно графические методики. Но это не так. Визуализация связана с любым зримым представлением данных. Возможно получение дополнительных эффектов означивания при использовании различных способов вывода текста [4]. При представлении программ кроме смысла самого текста, появляется дополнительная возможность выделения программных объектов. Анимация текста – мощный инструмент привлечения внимания к тем или иным программным объектам. Возможно, что таким образом удастся разрешить давнюю проблему – как статичный в принципе текст может передать динамику программы.

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

Возможно использование литерной визуализации в рамках визуального отладчика параллельных программ, разрабатываемом на базе метафоры «машины времени».

Литература

1. Hlawatsch M., Leube Ph., Nowak W., Weiskopf D. Flow Radar Glyphs—Static Visualization of Unsteady Flow with Uncertainty // IEEE Transactions on Visualization and Computer Graphics, Vol. 17, No. 12, December 2011, pp. 1949-1958.

2. A. N. M. Imroz Choudhury, Bei Wang, Rosen P., Pascucci V. Topological analysis and visualization of cyclical behavior in memory reference traces // IEEE Pacific Visualization Symposium, PacificVis 2012, Korea, February 28 - March 2, 2012. IEEE 2012, pp. 9-16.

3. Koike H., Takada T., Masui T. VisuaLinda: A Framework for Visualizing Parallel Linda Programs // Proceeding 1997 IEEE Symposium on Visual Languages. IEEE. 1997. pp. 174-178.

4. van Leeuwen Th. Towards a semiotics of typography // Information Design Journal + Document Design. 2006. 14(2), pp. 139-155.

Работа выполнена при поддержке программы Президиума РАН № 18 "Алгоритмы и математическое обеспечение для вычислительных систем  сверхвысокой производительности", а также проекта 12-П-1-1034 УрО РАН.


 

А также другие работы, которые могут Вас заинтересовать

42703. ИССЛЕДОВАНИЕ ПОЛУПРОВОДНИКОВЫХ ДИОДОВ 275.5 KB
  Диффузия основных носителей заряда через границу раздела р и nобластей создает ток диффузии в рnпереходе равный сумме электронного и дырочного токов: Уход основных носителей заряда из слоев вблизи границы в соседнюю область оставляет в этих слоях нескомпенсированный неподвижный объемный заряд ионизированных атомов примеси: уход электронов положительный заряд ионов доноров в nобласти а уход дырок отрицательный заряд ионов акцепторов в робласти рис. В результате появления потенциального барьера диффузионный ток уменьшается. Движение...
42704. Программирование вложенных циклов и матричных задач 174 KB
  В самом начале для удобстава пользователю предоставляется менюшка с выбором действий. 1-ручное заполнение матрицы, 2 – рандомное и выход из программы. Эта реализация выполняется спомощь оператора switch (+ разумеется выбор действий case 1, case 2, case 3). После того как матрица будет заполнена программа по условию задачи с помощью цикла for переберает каждый эл. матрицы по диагонале и ищет отрицательный эл. если не находит то выводит сообщение “Отрицательные числа в диагонале отсудствуют”.
42705. Инструкции по движению поездов и маневровая работа, конспект лекций 218.5 KB
  Правила приема, отправления и пропуска поездов при различных устройствах сигнализации, централизации и блокировки на железнодорожных станциях и средствах сигнализации и связи при движении поездов, как в нормальных условиях, так и в случаях их неисправности...
42706. Міжнародна система інтелектуальної власності 59.5 KB
  Основою міжнародної системи інтелектуальної власності на сьогодні є 22 угоди, 14 з яких регулюють правовідносини у сфері промислової власності, а вісім відносяться до авторського права і суміжних прав. Україна приєдналася до більшості
42707. Изучение массивов в языке ANSI C 1.8 MB
  Задача лабораторной работы состоит в практическом освоении массивов, совмещения их с функциями ввода и вывода, математическими функциями в одном приложении, написание приложения по индивидуальному варианту.
42708. Розпорядження майновими правами інтелектуальної власності, курс лекцій 1.35 MB
  Придбання прав інтелектуальної власності є засобом стратегії розвитку субєкта господарювання, спрямованої на оптимальне економічне використання такого обєкту не тільки в інтересах сторін договору, але й в інтересах широкої громадськості.
42709. ИССЛЕДОВАНИЕ ДИОДНЫХ ОГРАНИЧИТЕЛЕЙ И ДИОДНЫХ ФОРМИРОВАТЕЛЕЙ 155.5 KB
  Краткие теоретические сведения Основная функция положительных диодных ограничителей заключается в том чтобы повторять амплитуду входного напряжения если она не превышает заданный порог а при превышении поддерживать амплитуду выходного напряжения на пороговом уровне. Отрицательные диодные ограничители работают аналогично: амплитуда напряжения на выходе повторяет входную если она выше порогового уровня. В схемах диодных формирователей амплитуда выходного напряжения равна сумме амплитуды входного напряжения и некоторой постоянной...
42710. ЯЗЫКИ ПРОГРАММИРОВАНИЯ. ПРОЦЕДУРЫ И ФУНКЦИИ 145.5 KB
  функция печати массива чисел диапазона от n до 2n не возвращает значения принимает указатель на массив чисел и размер массива void ProstNumunsigned long int; функция инициализации массива простыми числами не возвращает значения принимает указатель на массив чисел и размер массива unsigned EnterNumvoid; функция ввода натурального числа возвращает натуральное число значений не принимает void Find_Twinsunsigned long...
42711. АЛГОРИТМИЗАЦИЯ ЗАДАЧ ОБРАБОТКИ ДИНАМИЧЕСКИХ МАССИВОВ 92.5 KB
  Введите натуральное целое число: ; cin n; cout n ; генерация случайных чисел flot p = new flot [n21]; создание динамического массива вещественных чисел на i элементов srnd timeNULL ; forint k=0; k n21; k { p[k] = flotrnd RND_MXrnd100 rnd50; заполнение массива случайными числами printf = 3. Начало cout введите натурасльное целое число: ; cin n; нет да forint k=0; k n21;...