×

Вы используете устаревший браузер Internet Explorer. Некоторые функции сайта им не поддерживаются.

Рекомендуем установить один из следующих браузеров: Firefox, Opera или Chrome.

Контактная информация

+7 961 270-60-01
ivdon@ivdon.ru

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

Аннотация

Радченко С.А.

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

05.13.18 - Математическое моделирование, численные методы и комплексы программ

Таганрогский технологический институт Южного федерального университета

Введение

В настоящее время когнитивные модели находят широкое применение у отечественных и зарубежных исследователей для анализа социальных, политических и экономических ситуаций [1,2]. В основном используются простые модели, в которых присутствует 10-15 элементов. Но даже при исследовании простых моделей возникают проблемы с решением вопросов об устойчивости социально-экономических процессов, со структурным анализом (выделением циклов, путей, анализом связности и сложности), моделированием прохождения и передачи импульсов между взаимосвязанными элементами системы. Принцип когнитивности, то есть познавательности субъектом объекта, требует представления графических результатов моделирования, переструктурирования моделей, объединении различных подсистем в одну систему и обособленный анализ различных взаимодействующих компонентов и тому подобное. Решение указанных проблем требует применения специальных компьютерных программ.
При современном развитии аппаратных средств и средств визуального программирования построение программной системы поддержки когнитивного моделирования не вызывает трудностей. Такие задачи сегодня ставятся и решаются в отдельных секторах Института управления РАН. Существует ряд программ, реализующих технологию когнитивного моделирования для решения задач управления сложными системами. Это такие программно-методологические комплексы, разработанные в ИПУ РАН, как “Интегрированный информационно-аналитический комплекс ситуационного анализа», ориентированный на реализацию когнитивной технологии стратегического управления развитием сложных социально-экономических объектов в нестабильной внешней среде, или комплекс “ИМПАН”, предназначенный для моделирования систем различного назначения с использованием аппарата знаковых графов [2].
Успех использования компьютерных технологий когнитивного моделирования, экономический эффект от их применения и перспективность данного направления сегодня не вызывает сомнений. Но в существующих программных системах отсутствует возможность решения всех обозначенных выше системных задач, поэтому в течении ряда лет разрабатывалась (Радченко С.А., Горелова Г.В.) программная система ПСКМ (Программная Система Когнитивного Моделирования), позволяющая в комплексе решать все задачи и  реализующая предложенную методологию когнитивного моделирования сложных систем.
При этом упор сделан на программирование и реализацию функций структурного анализа: выяснение закономерностей развития ситуаций, выявление «хороших» и «плохих» сценариев, анализ взаимодействия различных подсистем и взаимодействующих компонентов, поиск механизмов воздействия на систему управления. Алгоритмы разработанной программной системы поддержки принятия управленческих решений в социально-экономической системе основаны на когнитивном и сценарном моделировании [2,3], методах теории графов и теории систем [4].

1. Проектирование программной системы.

Проектирование программной системы (ПС КМ) включает нижеследующие этапы.
I. Анализ и разработка требований к ПС КМ;
II. Определение целей создания ПС КМ;
III. Разработка внешних спецификаций проекта;
IV.Формирование структуры ПС КМ и общих правил взаимодействия компонентов;
V. Проектирование внутренней логики каждого модуля.
Этапы разработки ПС КМ представлены на рисунке 1.

Рис1. Этапы разработки программной системы

I. Анализ и разработка требований к ПС КМ. В процессе разработки требований должны решаться следующие задачи:
1)определения формата поступающей со стороны исследуемой системы информации;
2) определения функций, подлежащих выполнению ПС КМ;
3) определения взаимосвязи между функциями ПС КМ;
4) выполнения анализа ограничений на структуру и состав исследуемых моделей;
5)определения требования к алгоритмам и вычислительным ресурсам ПС КМ.

1) Определение формата. Поступающая со стороны исследуемой системы информации должна представляться в виде вербального описания исследуемой системы.
2) Определение функций. Предлагается следующий основной состав функций, который будет обеспечивать решение задач ПС КМ: а) функция создания и обработки гипертекста; б) функция взаимодействия с базой данных, связанной с изучаемой предметной областью; в) функция создания и корректировки когнитивной карты; г) функция импульсного моделирования; д) функция решения обратной задачи импульсного моделирования; е) функция анализа устойчивости модели; ж) функция структурного анализа, функция разработки сценариев.

а) Функция создания и обработки гипертекста. Функция должна поддерживать создание пользователем на основе обычного текста гипертекста (текста, снабженного ссылками элементов текста друг на друга) и преобразование его в когнитивную карту. Требования к функции:

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

б) Функция взаимодействия с базой данных, связанной с изучаемой предметной областью. Функция необходима для визуального анализа динамики изменения показателей. Для реализации функции необходимо: 1) создать логическую и физическую структуру будущей базы данных; 2) организовать доступ пользователю к просмотру и поиску записей базы данных, хранящих необходимые статистические данные; 3) организовать возможность выбора записи, соответствующей временному ряду изменения показателя, и просмотра графика изменения показателя.

в) Функция создания и корректировки когнитивной карты. Для реализации необходимо: 1) задать вершины графа, представляющих собой элементы когнитивной карты; 2) задать дуги графа, представляющие собой отношения между элементами когнитивной карты; 3) задать текущие значения параметров вершин графа; 4) представить и отобразить на экране дисплея созданный ориентированный граф; 5) сохранить данные построенного графа в файле на жестком диске для последующего использования построенной когнитивной карты.

г) Функция импульсного моделирования. Для реализации необходимо: 1) открыть для работы файл данных когнитивной модели; 2) задать текущие импульсы в вершинах; 3) задать количество шагов моделирования;       4) провести расчеты импульсного моделирования по заданным входным данным; 5) выбрать вершины, изменения которых будут отображаться на графике при моделировании; 6) отобразить на графике результаты моделирования; 7) сохранить результаты моделирования в файл на жестком диске для последующей распечатки на принтере.

д) Функция решения обратной задачи импульсного моделирования. Для реализации необходимо: 1) открыть для работы файл данных когнитивной модели; 2) задать текущие импульсы в вершинах когнитивной модели;          3) задать вершины-субъекты когнитивной модели; 4) задать вершины-объекты; 5) задать ограничения, налагаемые на тенденцию изменения вершин-объектов; 6) задать интервал времени воздействия на вершины-субъекты со стороны лица принимающего решение; 7) задать интервал времени, в течение которого должны выполняться ограничения на изменение значений вершин-объектов; 8) провести расчет программы воздействий на вершины-субъекты, которая удовлетворяет заданным ограничениям при минимальных расходах; 9) отобразить результаты расчета программы воздействий на экране дисплея; 10) сохранить результаты расчета программы воздействий в виде текстового файла на жестком диске для возможности последующей распечатки и анализа;

e) Функция анализа устойчивости модели. Для реализации функции необходимо: 1) открыть для работы файл данных когнитивной модели; 2) произвести расчет собственных чисел матрицы взаимосвязей вершин когнитивной модели; 3) произвести отображение найденных собственных чисел на экране дисплея;               4) сохранить найденные собственные числа в текстовый файл для последующей распечатки и анализа;

ж) Функция структурного анализа. Функция предназначена для поиска циклов, путей и компонентов связности когнитивной модели. Для реализации функции необходимо: 1) открыть для работы файл данных когнитивной модели; 2) произвести поиск всех простых элементарных циклов (простых элементарных путей или компонентов связности) когнитивной модели; 3) произвести отображение списка найденных циклов и т.п. на экране дисплея в отсортированном по количеству вершин виде;    4) выделение выбранных циклов и т.п. на когнитивной модели; 5) перенос текущих выделенных циклов и т.п. в отдельную новую когнитивную модель для последующей работы; 6) сохранение списка найденных циклов и т.п. в текстовый файл для последующей распечатки и анализа.

3) Определение взаимосвязи между функциями. Взаимосвязи между описанными функциями следующие.
а) Реализация функции формирования во взаимодействии с пользователем ПС взвешенного орграфа для выполнения функции импульсного моделирования, разработки программы воздействий, анализа устойчивости и структуры сформированной когнитивной модели.
б) Для формирования когнитивной модели может быть необходима функция создания и обработки гипертекста.
в) Функция доступа к базе данных помогает оценить адекватность, а также может быть полезной при построении когнитивной модели для оценки отношений между факторами.
г) Функцию разработки управляющих воздействий целесообразно использовать после оценки развития ситуации с помощью функции импульсного моделирования.
Таким образом, будем иметь схему взаимосвязей между функциями ПС, отображенную на рисунке 2.

Рис. 2. Схема взаимосвязей между функциями ПС

 4) Анализ ограничений на структуру и состав исследуемых моделей. Система должна быть в состоянии проводить анализ моделей, количество вершин, в которых может достигать 100 и более. Как показывает опыт, большое количество вершин сильно затрудняет анализ, как по времени работы алгоритмов, так и в плане восприятия пользователем структуры модели. Поэтому при разработке социально-экономических моделей, основанных на когнитивном подходе разумно включать в модель до 30 вершин, а при необходимости создавать объединенные по некоторым признакам группы вершин – блоки, и рассматривать каждый блок как одну вершину.

5) Требования к алгоритмам и вычислительным ресурсам. Используемые алгоритмы и вычислительные ресурсы должны быть настолько эффективны, чтобы в течение 1-2 секунд закончить свою работу с когнитивной моделью, состоящей примерно из 10 вершин, каждая из которых смежна с 3-4 остальными вершинами. Модель с такой структурой с одной стороны не очень сложна, а с другой стороны может вполне решать задачу укрупненного представления исследуемой системы управления и более или менее детализированного представления ее подсистем.
Программная система должна работать в среде Windows 95 и выше. Уверенная работа программы возможна при условии, если конфигурация технических средств компьютера не хуже чем следующая: 16 Mb оперативной памяти, 66 MHz скорость процессора, 10 Mb свободной памяти на жестком диске.
На основании проведенного анализа требований к программной системе рассмотрим окончательное определение целей ее создания.

II. Определение целей создания ПС.
Цель разработки программной системы – получить инструментарий, позволяющий строить когнитивные модели социально-экономических систем, проверять их адекватность, проводить анализ динамических и структурных свойств построенных моделей, прогнозировать развитие ситуаций и формировать программы управляющих воздействий. Для полного определения целей необходимо выяснить группы пользователей ПС.
Первая группа пользователей – это специалисты в предметной области, аналитики возникающих ситуаций. Группа этих пользователей имеет представления о структуре так называемых базисных знаний в исследуемой системе, это экономические законы и законы природы, которые не должны противоречить закладываемым в когнитивные модели знаниям. Их задача – максимально подробно описать на естественном языке существующую проблему и помочь инженерам по знаниям построить непротиворечивые, адекватные реальной действительности когнитивные модели.
Вторая группа пользователей – инженеры по знаниям (инженеры-когнититологи), для которых характерен упрощенный, технологический подход к знаниям. Инженеры по знаниям являются специалистами в области системного анализа и построения систем. Их задача состоит в том, чтобы выделить и связать между собой основные базисные факторы во взаимодействии со специалистами в исследуемой предметной области. Эта задача становится эффективно реализуемой при использовании технологии гипертекстовых ссылок. В результате машинной обработки гипертекста формируется когнитивная модель анализируемой ситуации. Далее инженер-когнититолог проводит когнитивный анализ региональной ситуации.
Третья группа пользователей – это непосредственные заказчики исследований, лица принимающие решения. Эти пользователи являются потребителями информации, которую получили инженеры-когнитологи вместе со специалистами по предметной области в результате работы с ПС. От третьей группы пользователей зависит, будет ли полученная информация полезно использована, если она оценивается ими как достоверная, полная и непротиворечивая или же останется невостребованной. Именно специалисты, непосредственно связанные с принятием решений могут в полной мере оценить свойства полученной информации и решить, учитывать ее или нет при принятии управленческих решений.

2. Разработка внешних спецификаций проекта.

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


Рис. 3.  Структурная схема модулей

3. Описание работы программной системы

Описание пунктов меню программы. Меню программы содержит следующие пункты: 1) Создать новую модель. 2) Открыть существующую модель. 3) Записать текущую модель. 4) Сброс. 5) Процесс. 6) Число шагов моделирования. 7) Число шагов (промоделировано). 8) Опции. 9) График. 10) Сетка. 11) Создание программы воздействий. 12) Анализ устойчивости и структуры.13)Выход.

4. Анализ устойчивости и структуры.

Рассмотрим подробнее функции пункта «анализ устойчивости и структуры», который позволяет анализировать устойчивость исследуемой системы управления путем анализа структуры построенной модели и реакции на возмущение ее параметров со стороны внешней среды. Это Модуль II «Анализ структуры и устойчивости когнитивной модели», он  представлен четырьмя режимами работы.
Согласно теореме об устойчивости - устойчивость возмущений по графу определяется путем исследования корней характеристического уравнения матрицы взаимосвязей когнитивной модели. Режим «Собственные числа» позволяет на основе QR-алгоритма  найти собственные значения квадратной матрицы, соответствующей заданной когнитивной модели.
Режим «Циклы» предназначен для поиска и выделения всех простых элементарных циклов когнитивной карты. Устойчивость процессов  когнитивной модели будет зависеть от взаимовлияния циклов с положительными и отрицательными обратными связями.
Режим «Связность» позволяет ответить на вопрос является ли граф, представляющий когнитивную карту, сильно связным и выделить компоненты связности если они существуют.
Режим «Пути» предназначен для поиска всех возможных простых элементарных путей между двумя выбранными вершинами. В частности определяется наикратчайший путь (пути) между выбранными вершинами.
Примеры работы режимов «Собственные числа» и «Циклы» представлены на рисунках 4 и 5. На рисунке 4 кроме режима «Циклы» отображена карта, на которой выбранный цикл выделен жирным. Аналогичные операции можно проводить в режимах «Пути» и «Компоненты связности».


Рисунок 4 -  Режим «Собственные числа»

   Рисунок 5 -  Режим «Циклы»

Заключение.

Итоги разработки представленной версии ПС КМ можно сформулировать следующим образом.
1. Реализация ПС выполнена в виде программных модулей, то есть взаимосвязанных частей программы, реализующих отдельные функции. При проектировании системы была использована технология проектирования сверху вниз. При этом каждый последующий модуль состоит из совокупности более простых модулей. На верхнем уровне была выделена следующая группа модулей: модуль создания гипертекста, модуль построения и корректировки когнитивной модели, модуль анализа устойчивости, модуль структурного анализа, модуль импульсного моделирования, модуль расчета управляющих воздействия. Анализ связности между данными модулями показал, что модули связаны в основном логически, то есть используют одни и те же исходные данные. Функциональная связь между модулями очень слабая, что свидетельствует об эффективности разработанного программного обеспечения.
2. Эффективное построение когнитивных карт возможно на основе построенного экспертом гипертекста, если ПС КМ обеспечена соответствующим прикладными программами построения гипертекста и преобразования его в когнитивную карту. При этом в качестве исходной информации эксперту предоставляется вербальное описание исследуемой ситуации.
3. Разработка и анализ когнитивных моделей региональных ситуаций должны проводиться двумя группами экспертов: первая группа – специалисты по знаниям, вторая группа – инженеры по знаниям. При этом описание ситуаций, формулировка целей и проблем – это основная задача специалистов по знаниям, а разработка и анализ моделей – основная задача инженера по знаниям.
4. Программа позволяет исследовать структурные особенности изучаемых систем, моделировать их развитие и анализировать эффективность воздействия выбранных рычагов управления на протекающие процессы. Программная система построена на базе трех функциональных модулей: 1) модуль построения и модификации когнитивной модели; 2) модуль импульсного сценарного моделирования; 3) модуль анализа структуры и устойчивости когнитивной модели.

Литература

1. Максимов В.И. Когнитивные технологии – от незнания к пониманию. // Cб. 1-й трудов «Когнитивный анализ и управление развитием ситуаций», (САSC’2001). Тр. Межд. конф., т.1,  с. 4-18
2. Горелова Г.В., Захарова Е.Н., Радченко С.Н. Исследование слабоструктурированных проблем социально-экономических систем: когнитивный подход. – Ростов н/Дону: Изд-во РГУ, 2006.
3. Новая парадигма развития России (комплексные проблемы устойчивого развития). Под. ред. В. А. Коптюга, В. М. Матросова, В. К. Левашова. – М.: Изд. “Академия”, Изд. МГУК, 2000.