Поддержка принятия решений в динамически изменяемых системах

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ФАКУЛЬТЕТ РАДИОФИЗИКИ И КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ

Кафедра интеллектуальных систем

 

 

 

 

 

 

 

 

ПОДДЕРЖКА ПРИНЯТИЯ РЕШЕНИЙ

В ДИНАМИЧЕСКИ ИЗМЕНЯЕМЫХ СИСТЕМАХ

курсовая работа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Штукатера Дмитрия Сергеевича

студента 3 курса, специальность

«прикладная информатика»

 

научный руководитель:

кандидат технических наук, доцент

Шестаков Константин Михайлович

 

 

 

 

 

 

Минск, 2014

Оглавление

 

Список используемых сокращений

3

Введение

4

Глава 1. Аналитический обзор

5

1.1

Системы поддержки принятия решений (СППР)

5

1.1.1

Общая характеристика СППР

5

1.1.2

Классификация СППР

7

1.1.3

Архитектура СППР

8

1.2

Оперативный анализ данных (OLAP)

12

1.2.1

Общая характеристика OLAP-систем

12

1.2.2

Подходы к построению OLAP-систем

14

1.2.3

Многомерная модель OLAP-систем

17

1.2.4

Применение многомерного анализа данных в СППР

20

1.3

Особенности СППР в динамических системах

21

1.4

Выводы

22

Глава 2. Описание предложенного подхода

23

2.1

Характеристика подхода

23

2.2

Архитектура подхода

24

2.3

Выводы

26

Заключение

27

Список литературы

28


 

 

Список используемых сокращений

СППР –

система поддержки принятия решений

OLAP –

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

ЛПР –

лицо, принимающее решение

ХД –

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


 

 

Введение

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

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

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

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

В работе исследуются классические подходы построения подсистем многомерного анализа и выявляются их недостатки при применении к СППР рассматриваемого класса.

 

Глава 1. Обзор систем поддержки принятия решений

1.1 Системы поддержки  принятия решений

1.1.1 Общая характеристика систем поддержки принятия решений

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

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

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

Система поддержки принятия решений (СППР, Decision Support System, DSS)  - компьютерная автоматизированная система, целью которой является помощь людям, принимающим решение в сложных условиях для полного и объективного анализа предметной деятельности.

Основными функциями таких систем являются:

  • оказание помощи ЛПР при анализе исходной информации (оценке сложившейся обстановки и ограничений, накладываемых внешней средой);
  • выявление и ранжирование приоритетов, учет неопределенности в оценках ЛПР и формирование его предпочтений;
  • генерация возможных решений (формирование списка альтернатив);
  • оценка возможных альтернатив, исходя из предпочтений ЛПР, и ограничение, накладываемое внешней средой;
  • анализ возможных последствий принимаемых решений;
  • выбор лучшего, с точки зрения ЛПР, возможного варианта.

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

Некоторые из этих методов были разработаны в рамках искусственного интеллекта. Если в основе работы СППР лежат методы искусственного интеллекта, то говорят об интеллектуальной СППР или ИСППР.

Близкие к СППР классы систем — это экспертные системы и автоматизированные системы управления.

Теоретические исследования в области разработки первых систем поддержки принятия решений проводились в технологическом институте Карнеги в конце 50-х начале 60-х годов XX века. Объединить теорию с практикой удалось специалистам из Массачусетского технологического института в 60-х годах. В середине и конце 80-х годов XX столетия стали появляться такие системы, как EIS, GDSS, ODSS. В 1987 году компания Texas Instruments разработала для United Airlines Gate Assignment Display System. Это позволило значительно снизить убытки от полетов и отрегулировать управление различными аэропортами, начиная от Международного аэропорта O’Hare в Чикаго и заканчивая Stapleton в Денвере, штат Колорадо. В 90-х годах сфера возможностей СППР расширялась благодаря внедрению хранилищ данных и инструментов OLAP. Появление новых технологий отчетности сделало СППР незаменимой в менеджменте.

 

1.1.2 Классификация СППР

По взаимодействию с пользователем выделяют три вида СППР:

  • пассивные, помогают в процессе принятия решений, но не могут выдвинуть конкретного предложения;
  • активные, непосредственно участвуют в разработке правильного решения;
  • кооперативные, предполагают взаимодействие СППР с пользователем.

 

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

По способу поддержки различают:

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

По сфере использования выделяют общесистемные и настольные СППР.

Общесистемные работают с большими хранилищами данных и применяются многими пользователями. Настольные являются небольшими системами и подходят для управления с персонального компьютера одного пользователя.

 

1.1.3 Архитектура СППР

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

Рис. 1.1. Архитектура СППР

В современных условиях динамичности рынка, обострения конкуренции, комплексности управления бизнес-процессами к СППР предъявляются следующие требования:

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

Для реализации перечисленных требований широко используются информационные хранилища (Data Warehouse), системы оперативного анализа данных (OLAP) и интеллектуального анализа данных (Data Mining). Архитектура информационного хранилища системы поддержки принятия решений представлена на рис. 1.2.

Рис. 1.2. Архитектура информационного хранилища СППР

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

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

Подсистема хранения данных представляет собой многомерное хранилище, организованное в виде:

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

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

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

Подсистема оперативного анализа данных (OLAP) используется лицами, подготавливающими информацию для принятия решений путем выполнения различных статистических группировок исходных данных (рис. 1.3) .

Рис. 1.3. Структура OLAP-системы

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

Необходимость появления DM-технологии продиктована следующими обстоятельствами:

  • тотальное применение web-серверов обеспечивает доступ к огромному объему разнородной информации, обработка которой с помощью традиционных информационных технологий невозможна; 
  • потребность в выявлении скрытых зависимостей между различными факторами, представленными в различных формах (символьная, числовая, графическая, неструктурированная, структурированная и т. д.);
  • необходимость в выделении из множества значений, принимаемых факторами, тех, которые определяют поведение объекта и оказывают влияние на его поведение в будущем.

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

Подсистема «Информационная система руководителя» (EIS — Execution Information System) предназначена для лиц, непосредственно принимающих решения. В качестве интерфейса руководителям предлагается набор стандартных отчетов и графиков, настраиваемых на потребности руководителя через систему меню.

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

 

1.2 Оперативный анализ данных (OLAP)

1.2.1 Общая характеристика  OLAP-систем

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

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

 

В 1993 году Кодд сформулировал «12 принципов аналитической обработки в реальном времени» (см. табл.1):

Таблица 1. Принципы аналитической обработки в реальном времени

Принцип

Описание

1

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

Средства должны поддерживать многомерный на концептуальном уровне взгляд на данные.

2

Прозрачность

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

3

Доступность

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

4

Согласованная производительность

Производительность практически не должна зависеть от количества Измерений в запросе.

5

Поддержка архитектуры клиент-сервер

Средства должны работать в архитектуре клиент-сервер.

6

Равноправность всех измерений

Ни одно из измерений не должно быть базовым, все они должны быть равноправными (симметричными).

7

Динамическая обработка разреженных матриц

Неопределенные значения должны храниться и обрабатываться наиболее эффективным способом.

8

Поддержка многопользовательского режима работы с данными

Средства должны обеспечивать возможность работать более чем одному пользователю.

9

Поддержка операций на основе различных измерений

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

10

Простота манипулирования данными

Средства должны иметь максимально удобный, естественный и комфортный пользовательский интерфейс.

11

Развитые средства представления данных

Средства должны поддерживать различные способы визуализации (представления) данных.

12

Неограниченное число измерений и уровней агрегации данных

Не должно быть ограничений на число поддерживаемых измерений.


 

Требования к приложениям оперативного анализа данных:

  • предоставление пользователю результатов анализа за приемлемое время (обычно не более 5 с), пусть даже ценой менее детального анализа;
  • возможность осуществления любого логического и статистического анализа, характерного для данного приложения, и его сохранения в доступном для конечного пользователя виде;
  • многопользовательский доступ к данным с поддержкой соответствующих механизмов блокировок и средств авторизованного доступа;
  • многомерное концептуальное представление данных, включая полную поддержку для иерархий и множественных иерархий (это — ключевое требование OLAP);
  • возможность обращаться к любой нужной информации независимо от ее объема и места хранения.

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

 

1.2.2 Подходы к построению OLAP-подсистем

По аналогии с подходами построения клиент-серверных систем выделяют два подхода к построению OLAP-подсистем:

Подход, основанный на двухзвенной архитектуре (рис. 1.4) и подход, основанный на трёхзвенной архитектуре (рис. 1.5).

Рис. 1.4 Двухзвенная архитектура построения OLAP-подсистем

Рис. 1.5 Трёхзвенная архитектура построения OLAP-подсистем

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

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

 

Сравним данные подходы:

Объем обрабатываемых данных. Объем данных определяется предметной областью анализируемых данных, а также количеством записей в хранилище данных. Как и настольная OLAP-система, так и OLAP-сервер, вынуждены кешировать данные в оперативной памяти для уменьшения количества запросов к хранилищу данных. Таким образом, объем данных, обрабатываемых настольной OLAP-системой и OLAP-сервером, находится в прямой зависимости от объема оперативной памяти. У серверов объём оперативной памяти больше, чем у пользовательских ПК, поэтому OLAP-сервер может обрабатывать большие объемы данных, чем настольная OLAP-система. 

Производительность системы. Эта характеристика определяется следующими факторами: объемом обрабатываемых данных и мощностью компьютеров. При возрастании количества входных анализируемых данных производительность всех OLAP-систем снижается за счет значительного увеличения количества высчитываемых суммарных значений, но при этом темпы снижения разные. Продемонстрируем эту зависимость на графике (рис. 1.6):

Рис. 1.6 Зависимость времени отклика OLAP-системы от объема обрабатываемых данных

Скоростные характеристики OLAP-сервера менее чувствительны к росту объема данных. Это объясняется различными технологиями обработки запросов пользователей OLAP-сервером и настольной OLAP-системой. Например, при операции детализации OLAP-сервер обращается к хранимым данным и "вытягивает" данные этой "ветки", в то время как настольная OLAP-система вычисляет весь набор суммарных значений в момент загрузки.

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

 

1.2.3 Многомерная модель данных в OLAP-анализе

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

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

Некоторые преимущества многомерной модели по сравнению с реляционной:

  • Возможность анализа больших объемов данных с приемлемой скоростью;
  • Возможность осуществления любых «срезов» и «углублений» в определённой структуре БД;
  • Быстрая локализация трендов и проблемных областей.

Многомерный куб представлен набором мер и измерений, а именно, куб — это декартовое произведение измерений, где для каждого элемента произведения проставлен набор мер.

Измерения куба – набор доменов, по которым создаётся многомерное пространство. Другими словами, измерение – это  упорядоченный  набор  значений, соответствующий грани куба. Многомерное моделирование предусматривает использование измерений для предоставления максимальной информативности. В отличие от реляционных баз данных, контролируемая избыточность в многомерных базах данных  считается оправданной, если она увеличивает информационную ценность.

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

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

Мера (или показатель) – это  значение,  которое  однозначно  определяется фиксированным набором измерений и количественно характеризует анализируемые факты.

Меры бывают трёх типов:

  • аддитивные (additive) меры –  допускающие агрегирование относительно любого измерения куба данных;
  • неаддитивные (nonadditive) меры – которые не могут агрегироваться ни по какому измерению куба данных;
  • полуаддитивные (semiadditive) меры – которые допускают агрегирование относительно одних измерений и не допускают относительно других.

Многомерная база данных естественным образом предназначена для определенных типов запросов:

Запросы вида slice и dice (срезы куба) — формирование подмножества многомерного массива данных, соответствующего единственному значению одного или нескольких элементов измерений, не входящих в это подмножество. Если рассматривать термин slice с позиции конечного пользователя, то наиболее часто его роль играет двумерная проекция куба (рис. 1.7). Срез dice отличается от sliceтем, что это трёх- и более-мерная проекция куба.

Поддержка принятия решений в динамически изменяемых системах