Технические науки / 12.Автоматизированные системы управления на производстве.

д.т.н. Шведенко В.Н., Веселова Н.С.

ЗАО «РЕГУЛ+», Россия, Санкт-Петербург

Многомерные данные и их моделирование

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

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

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

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

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

Прежде, чем приступить к математическому моделированию конкретного объекта, следует выделить базовые составляющие – предметные переменные и константы, на основе которых будут строиться предикаты и соответствующие им множества истинности.

Каждый объект будем рассматривать как совокупность элементарных свойств и свойств – вложенных объектов. Объект и его свойства определяются конкретным типом, а также видом связей, по которым происходит вложение в объект других объектов. Зададим следующие множества и предметные константы:

О = {o1 , o2 , o3 ,…, oq} – множество объектов системы, где oi - код объекта, i – порядковый номер в системе; , q – кол-во объектов

H = {h1 , h2 , h3 ,…, hm} – множество элементарных свойств системы, где hj– код свойства; , m – кол-во свойств объектов

K = {k1 , k2 , k3 , k4 , k5} – конечное множество типов объектов, kp – тип объекта

 

T = {t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 } – конечное множество типов элементарных свойств, где tu – тип свойства

L = {l1 , l2 , l3} – конечное множество типов связей: один к одному, один ко многим, многие ко многим. lx – тип связи объектов.

A = {a1 , a2 , … , am } – множество имен элементарных свойств, где as – имя свойства; B = {b1 , b2 , … , bq} – множество имен объектов, гдеbi – имя объекта.

Описание представленных множеств и констант происходит в соответствии с объявленными объектами и процессами предметной области.

Дадим математическое описание многомерного информационного объекта, созданного с помощью системы «Cobra++». Многомерная модель данных представляется в виде дерева информационного объекта.  Проектирование выполняется путем добавления элементарных свойств в структуру и вложения других объектов. На рисунке 1 представлена древовидная структура информационного объекта «Тендер». Согласно классификации объектов системы, представленный объект является объектом управления с вложенными в него объектами контроля по связям «один-к-оному», «один-ко-многим». Построение модели будем проводить «снизу-вверх», т.е. зададим предикаты вложенных объектов и их элементарных свойств. Например, введем предикат, назначающий некоторому объекту из множества О тип из множества К - obj_type(O,K) . Множество, на котором определен данный предикат, имеет следующий вид:

 - множество пар, первый элемент принадлежит множеству О, для которого существует единственный элемент множества К – второй элемент пары.

 Правила описания развернутого объекта контроля «Предмет торгов» выглядят следующим образом:

obj_type(o2, 4), obj_name(o2, b2), где o2 – код объекта «Предмет торгов», 4 – тип объекта (объект контроля), b2 – имя объекта.

Рис. 1. Древовидная структура объекта «Тендер»

Таким образом, с помощью данных правил-предикатов мы установили однозначную привязку типа и имени объекта к коду, хранящегося в системе.

Аналогичным образом задаем предикаты других вложенных объектов структуры и самого объекта «Тендер».

obj_type(o1, 5), obj_name(o1, b1) – объект управления «Тендер»

obj_type(o3, 4), obj_name(o3, b3) – объект контроля «Участник торгов»

obj_type(o4, 1), obj_name(o4, b4) – справочник «Наименование работ»

obj_type(o5, 1), obj_name(o5, b5) – справочник «Виды работ»

Подобным же образом задаются предикаты описывающие элементарные свойства – атрибуты информационного объекта. Каждое свойство задается своими правилами, однозначно устанавливающими тип и имя этого свойства. Например, предикаты первого свойства «Информация об объекте» объекта «Предмет торгов» имеют следующий вид (рисунок 2):

 

 

 

 

 


Рис. 2. Предикаты элементарных свойств

Далее перечисляются все элементарные свойства, относящиеся к объекту с кодом о2:

s_prop*(o2, 1, h1) – свойство «Информация об объекте»

s_prop*(o2, 1, h2) – свойство «Сбор тендер-заявок»

s_prop*(o2, 1, h3) – свойство «Начало торгов»

s_prop*(o2, 1, h4) – свойство «Окончание торгов»

s_prop*(o2, 1, h5) – свойство «Оглашение торгов».

Второй аргумент предиката s_prop* указывает на версионность объекта – порядковый номер зафиксированной структуры.

Таким образом, итоговый объект представляется набором элементарных свойств, заданных предикатами:

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

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

Литература

1. Технология быстрой разработки баз данных и приложений пользователя в системе «Cobra++» / В.Н. Шведенко, Р.А. Набатов, // «Программные продукты и системы. Международное научно-практическое приложение к международному журналу «Проблемы теории и практики управления» №2 (82), 2008. Тверь-2008. С. 39-41.

2. Заботнев М.С. Многомерная модель представления данных по образовательной статистике // Телематика-2003. Труды X Всероссийской научно-методической конференции. Санкт-Петербург, 2003. - С. 245-246.

3. Шаллоуей А., Тротт Д.Р. Шаблоны проектирования. Новый подход к объектно-ориентированному анализу и проектированию. М.: Издательский дом «Вильяме», 2002. - 288 с.