В работе рассмотрена модель оценки сценариев развития отрасли на основе МАИ, представлена разработанная на ее основе информационная система, автоматизирующая расчет интегральной оценки данных сценариев.
Данная компьютерная программа позволит упростить процедуру экспертного оценивания отрасли для более оперативного получения информации о состоянии отрасли и стадии ее развития.
Использование информационной системы дает возможность повысить эффективность управления сложными процессами, к которым относится и управление работой отрасли.
Литература
1. Архипова Н.И. Исследование систем управления. М.: ПРИОР, 2002. 348 с.
2. Саати Т. Принятие решений. Метод анализа иерархий; пер. с англ. М.: Радио и связь, 1989.
3. Попова О.А., Чернышева Т.Ю. Использование информационной системы для оценки сценариев развития отрасли // Молодежь и современные информационные технологии: сб. тр. VII Всеросс. науч.-практич. конф. студентов, аспирантов и молодых ученых (Томск, 25-27 февраля 2009 г.). Томск: Изд-во СПБ Графикс, 2009. Ч. 2. С. 237-238.
4. Попова О.А., Чернышева Т.Ю. Разработка информационной системы стратегического управления промышленной отраслью // Современные техника и технологии: сб. тр. XV Междунар. науч.-практич. конф. студентов, аспирантов и молодых ученых. В 3-х т. Томск: Изд-во Томского политехнич. ун-та, 2009. Т. 2. С. 269-270.
УДК 004.942
МНОГОМЕРНЫЙ АНАЛИЗ ДАННЫХ В СИСТЕМАХ НЕ ДООПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ
К.Е. Смирнов (Центр информационных технологий и систем органов исполнительной власти,
г. Москва, kюnstantm.e.smirrюv@gmaiLcюm)
В статье представлен метод многомерного анализа данных на основе технологии недоопределенных вычислений, значительно расширяющий возможности аналитической обработки не полностью определенных данных в системах OLAP.
Ключевые слова: многомерный анализ данных, OLAP, недоопределенные вычисления, программирование в ограничениях.
В настоящее время для быстрой обработки сложных запросов к БД в системах поддержки принятия решений широко применяется технология оперативной аналитической обработки OLAP (Online analytical processing). В основе концепции OLAP лежит представление данных в виде многомерной структуры, называемой кубом. OLAP-куб содержит несколько измерений, в разрезе которых осуществляется анализ численных показателей, называемых мерами. Данный подход позволяет получать время обработки запросов на порядки меньшее, чем при запросах к реляционной БД, в частности, за счет предварительно вычисленных агрегатов.
Одной из важных проблем в системах OLAP является необходимость учета неточности и недо-определенности исходных данных, находящихся в БД. Недоопределенность характерна как для данных, относящихся к истекшему временному отрезку, так и для значений прогнозируемых показателей. Представлению неточных данных в OLAP посвящен ряд исследований, в которых основное внимание уделяется расширению понятия OLAP-куба с помощью аппарата нечетких множеств, а также разработке методов извлечения нечетких данных [1].
Однако для решения большинства аналитических задач требуется не только возможность представления и извлечения недоопределенных данных, но и поддержка сложных вычислений над ними. При этом между показателями могут существовать алгебраические зависимости произвольного вида, а также логические условия. Кроме того, для обеспечения интерактивного анализа данных необходимо наличие функции обратной записи в ячейки куба, позволяющей изменять значения мер и осуществлять моделирование для данного сценария. Существующие методы представления и обработки неточных данных в OLAP не дают возможности решать задачи удовлетворения ограничений и определения областей возможных значений переменных в общей постановке. Таким образом, разработка методов многомерного анализа данных с учетом их недоопределенности является актуальной задачей.
В данной работе описывается разработанный автором метод многомерного анализа данных, основанный на применении математического аппарата недоопределенных вычислений (Н-вычисле-ний) [2].
Этот аппарат относится к активно развиваемому в мире направлению «программирование в
ограничениях» и основан на декларативном описании задачи в виде недоопределенной модели (Н-модели), а не на задании алгоритма решения. Н-модель представляет собой набор ограничений R={R1? R2, ..., Rk} над переменными x15 x2, ..., xn с областями значений, соответственно, A1? A2, ..., An. Ограничения могут иметь вид уравнений, неравенств, логических выражений и т.п. Метод Н-вычислений обеспечивает автоматическое нахождение наборов значений (a15 a2, ..., an), принадлежащих областям значений Aj, i=1, 2, ..., n, одновременно удовлетворяющих всем ограничениям из множества R. Примером Н-модели является следующая модель: const int=11; real x [N]; r=100*((1-x[1])2+sum(int i=11, ..., N-1; (x[i+1]--x[i]2)2)); r=0.
Решение данной модели: x[i]=1, i=1, ..., 11.
Основными преимуществами метода Н-моде-лей являются:
- возможность задания произвольных систем ограничений, не решаемых другими методами;
- определение областей возможных значений переменных, а не только конкретных решений;
- отсутствие необходимости составлять алгоритм решения задачи;
- возможность решения как прямых, так и обратных задач.
Указанные свойства значительно расширяют возможности представления и обработки недооп-ределенных данных при решении широкого класса задач. Метод Н-моделей уже показал свою эффективность для решения ряда экономических задач, в частности, при моделировании инвестиционных проектов и моделировании региональной экономики. Вместе с тем до настоящего времени в системах Н-вычислений отсутствовали методы многомерного представления и аналитической обработки недоопределенных данных.
В основе предложенного метода многомерного анализа недоопределенных данных лежит следующее структурное представление Н-модели. Данные хранятся в таблицах реляционной БД, имеющей структуру звезды. Таблица фактов содержит уникальный составной ключ, который объединяет первичные ключи таблиц измерений, и столбцы с численными показателями, представляющими минимальное и максимальное значения соответствующей недоопределенной величины. С каждой записью в таблице фактов связаны одна или несколько недоопределенных переменных (Н-переменных) в Н-модели, представляющих некоторый многомерный показатель. В таблицах измерений содержатся столбец с уникальным ключом, связанным с таблицей фактов, а также столбцы (атрибуты), описывающие данное измерение. Такая структура БД позволяет ускорить выполнение многомерных запросов и использовать при запросах метаданные из нескольких таблиц, что ранее было недоступно в системах Н-вычислений.
Архитектура системы многомерного анализа данных на основе Н-вычислений состоит из следующих компонентов.
Основным клиентским приложением, в котором происходит работа с данными, является программная система Microsoft Excel. Ее функциональное назначение - предоставление пользовательского интерфейса для выполнения операций с многомерными данными, включая динамическое создание запросов к OLAP-кубу и построение отчетов, изменение значений ячеек с целью пересчета куба и визуализацию показателей.
При загрузке и подготовке используемых для анализа данных применяется компонент Microsoft SQL Server PowerPivot. Подготовка данных требует определения связи между таблицами БД, а для создания дополнительных вычисляемых полей и мер необходимо использовать язык Data Analysis Expressions (DAX). Данный компонент осуществляет сжатие и обработку данных в оперативной памяти, что позволяет получить высокую скорость выполнения операций при больших объемах данных.
Основным компонентом, обрабатывающим недоопределенные данные, является вычислительное ядро на основе метода Н-моделей. Ядро производит вычисление Н-модели, в которой задается связь между многомерными показателями. Взаимодействие с вычислительным ядром происходит с помощью расположенного на веб-сервере модуля на языке PHP. После вычислений модели выполняются обновление данных в БД и соответствующее обновление OLAP-куба.
Компонент передачи данных из Microsoft Excel в вычислительное ядро отслеживает измененные пользователем ячейки и затем для проведения пересчета передает данные в вычислитель по протоколу HTTP. В изменяемых пользователем ячейках могут находиться значения конкретных многомерных показателей либо их агрегированные в соответствии с выбранной иерархией таблицы значения. В последнем случае происходит автоматическое определение входящих в агрегат аргументов для дальнейшего динамического формирования ограничения, включаемого в Н-модель. Это существенно упрощает работу с Н-моделями большой размерности. Основной особенностью данного метода является автоматическое уточнение всех связанных с измененной величиной интервальных Н-переменных.
Рассмотрим пример использования предложенного метода для анализа прогнозных показателей деятельности компании, вычисляемых с помощью метода Н-моделей. С каждым из моделируемых показателей связана Н-переменная, способная уточняться при поступлении дополнительных условий. По математической форме ограничения в Н-модели в общем случае могут иметь вид смеси линейных и нелинейных уравнений и
неравенств, логических условий (например, условий типа «если... то...») и условий максимума либо минимума. Также возможны ограничения в виде неявных функций.
Работа с системой осуществляется с помощью традиционного для OLAP интерфейса сводных таблиц, предоставляющего широкие возможности управления видом генерируемых отчетов (рис. 1). Отчет формируется путем выбора полей (атрибутов измерений OLAP-куба), их переноса в область строк, столбцов или значений таблицы, а также применения дополнительных фильтров и выбора срезов куба. Основной особенностью отчета является наличие столбцов, в которых численное значение показателей соответствует нижней и верхней границам Н-переменной. На рисунке 1 представлен пример отчета с прогнозируемыми значениями показателя «Продажи» в разрезе кварталов и каналов продаж. Возможность динамического формирования отчета существенно увеличивает эффективность работы с Н-моделями по сравнению с существующими системами Н-вычислений.
Названия арок ' ПродажиМин Продажи Ma кс
ЭКв.1 11711083 676р.1 1882192043р.
Интернет 354 393 835р. 389 S33 274р.
Каталог 159 04.9 060р. 174 953 966р.
Основной 957199428р. 1052919 370р.
Посреднику 240 441 302р. 264485 433р.
В Кв.2 2181654 582р. 2 399 820 041р.
Интернет 436 817 663р. 480499435р.
Каталог 157 281321р. 173 009453р.
Основной 1305533 900р. 1436 087 290р.
Посреднику 282021693р. 310 223 862р.
ЭКв.З 2163 453 399р. 2 379 798 738р.
Интернет 443 863 613р. 493 755 474р.
Каталог 175 654106р. 193 219517р.
Основной 1246 257 620р. 1370 383 333р.
Посреднику 292 673 059р. 321940 365р.
Э Кв.4 2285 032 708р. 2 513 535 979р.
Интернет 445 990 944р. 490 590 038р.
Каталог 203 920 469р. 224 312515р.
Основной 1345 708 650р. 1480 279515р.
Посреднику 289412 646р. 318 353 911р.
Общий итог 8 341 224 365р. 9 175 346 301р.
Список попей Power Pivot ▼ X Выберите поля., добавляемые к отчету:
1 1^1
□ Channel Key □ ChannelLabel 121 ChannelNaine □ ChannelDescríptíon □ ETLLoadID □ Load Date □ Update Date В DimDate □ Date key □ FullDateLabel □ DateDesciiption □ CalendarYear □ CalendarYearLabel v
Вертикальные срезы Jg| Горизонтальные cp ...
S/* Фильтр отчетов Ш Метки столбцов
§§§ Метки строк T. Значения
Ca 1 en d arQu a rteitabel ПродажиМин
ChanneIName T ПрпдажиМакс '
Рис. 1. Экранная форма модели с возможностью выбора полей, добавляемых в отчет
Важной функциональной возможностью для анализа многомерных данных является применение фильтров по значениям атрибутов и Н-пере-менных. Фильтрация может производиться по значениям из различных таблиц БД, значениям Н-переменных, а также дополнительным мерам, определяемым с помощью языка DAX. В последнем случае мера может быть функцией от нижней и верхней границ Н-переменной, например, модулем их разности. Это позволяет учитывать ширину интервала недоопределенности и отображать только нужные для анализа показатели.
На рисунке 2 представлена экранная форма модели с использованием данной возможности. Фильтрация осуществляется по категории продукта, а затем и по минимальному значению интере-
Рис. 2. Экранная форма модели с фильтрами на значения атрибутов куба и Н-переменных
сующего недоопределенного показателя уровня продаж (ПродажиМин). В данном отчете значения этого показателя выводятся только для заданной категории продуктов и каналов с уровнем продаж выше заданного в фильтре значения.
Аналогичную возможность для фильтрации данных предоставляют срезы - элементы интерфейса для выбора подмножества значений, содержащихся в OLAP-кубе (рис. 3). Срезы позволяют
Рис. 3. Экранная форма модели с использованием срезов
включать в рассчитываемые агрегированные значения только элементы с заданными значениями атрибутов.
Перечисленные выше функции интегрируют возможности аналитической обработки ОЬЛР-систем и представления недоопределенных данных в рамках этих систем. Так как процесс работы с Н-моделью обычно заключается в пошаговом уточнении значений показателей модели, эти функции служат для анализа результатов вычислений после очередного уточнения всего набора показателей. Для обеспечения полноценного анализа требуется также наличие функций изменения многомерных показателей с последующим вычислением Н-модели при новых значениях переменных.
При изменении пользователем значения многомерного показателя активизируется модуль, определяющий, находится ли измененный показатель на листовом уровне в иерархии для данной Н-модели или же является агрегированным значением, зависящим от нескольких переменных (рис. 4). Например, Н-модель может содержать показатели с измерениями «Канал продаж», «Время» и «Продукт». В этом случае выделенная ячейка на рисунке 4 характеризует показатель на лис-
товом уровне иерархии, так как значения всех измерений однозначно заданы. Если выбранная ячейка соответствует суммарному показателю по всем продуктам компании за первый квартал, выполняются определение входящих в сумму переменных и дальнейшая генерация ограничения для
п
Н-модели вида ^ а, = [хт1п, хтах], где в левую ¡=1
часть равенства входят компоненты агрегированного показателя, а в правую - заданные значения измененного в таблице показателя. В случае при-
менения иного способа агрегации (минимум, максимум и др.) ограничение принимает соответствующий вид. С изменяемой ячейкой в Н-модели может быть связано произвольное число ограничений.
После вычислений Н-модели и обновления таблицы данные становятся доступными для последующей аналитической обработки. На рисунке 5 приведен пример уточнения показателей (уменьшения интервала недоопределенности) при изменении переменных в модели. Так как параметры Н-модели не делятся на входные и выходные, пользователь имеет возможность изменить произвольный многомерный показатель, полученный после выбора некоторого среза куба. При этом происходит сжатие всех интервальных значений переменных в модели. Возможно решение обратных задач: например, после задания требуемого значения прогнозного показателя, относящегося к некоторому промежутку времени, определяются значения остальных параметров Н-модели, необходимые для достижения данной цели.
Натаання строк т Прода^киМим ПродажиМакс Названия строк ' ПродажкМих ПродэжиМакс
Интернет 1686 071110]!. 4 5Q4997 420р Интернет 1 öS & С 71 llûp 21i0s 02 344p, KB.l 354M36SSP. 960 713 775р. - на.1 Î54 39Î885P, 520 515897p.
I I ] 15014р. 1 8412p.| 9 Slip I г 11223р. 32 746р. 3 1122Sp 18465p-
3 14 590р. 34 930p. 3 14590p. 17587p.
4 26 512p. 49236p. 4 26512p. 43953p,
5 17017p. 40015p. S 17017p. 10 266p.
6 24555p- 73 456p. 6 24535p. 27287p,
7 21 273p. 45 651p. 7 21 273p, 23 347p. 3 65 715p. 133 204p. 3 65 715p. 79 022p.
9 41860p. 118797p. 9 41860p, 79 865p.
10 47216p. 120655p. 10 47216p. 36580p,
II 30 157p- 74 053p, 11 30157p. 55 76Sp,
Рис. 5. Уточнение показателей при изменении модели (слева - до вычислений, справа - после)
Рассмотренные функциональные возможности системы ранее не были реализованы в системах Н-вычислений и являются новыми. Средства пользовательского интерфейса позволяют существенно упростить работу над Н-моделями большой размерности и автоматизировать процесс внесения изменений в модель.
Таким образом, разработанный метод многомерного анализа данных на основе Н-вычислений значительно расширяет возможности аналитической обработки не полностью определенных данных в системах OLAP и повышает эффективность применения технологии Н-моделей для обработки многомерных данных.
Литература
1. Burdick D., Deshpande P.M., Jayram T.S., Ramakrishnan R. and Vaithyanathan S. OLAP over uncertain and imprecise data // The VLDB Journal. 2007. Vol. 16, № 1, pp. 123-144.
2. Нариньяни А.С. [и др.]. Программирование в ограничениях и недоопределенные модели // Информационные технологии. 1998. № 7. С. 13-22.
Названия строк ПродажиМнн 1 Продажи Ma кс
^Интернет 1686 071110р. 4 504997 420р.
d Кв.1 354 393 885р. 969 713 775р.
1 1 8 412р.1 19 014р.
2 11228р. 32 746р.
3 14 530р. 34 930р.
4 26 512р. 69 256р.
5 17 017р. 40 915р.
6 24 535р. 73 456р.
7 21 273р. 45 651р.
S 65 715р. 183 204р.
9 41 860р. 118 797р.
10 47 216р. 129 655р.
11 30157р. 74 053 р.
Рис. 4. Выбор изменяемой ячейки с многомерным недоопределенным показателем