Анализ задач, возникающих при создании нечетких когнитивных карт

Анализ задач, возникающих при создании нечетких когнитивных карт Гамазов И. Н.1, Терехов В. И.2

1Гамазов Иван Николаевич / Gamazov Ivan Nikolaevich - бакалавр, магистрант;

2Терехов Валерий Игоревич / Terekhov Valery Igorevich - кандидат технических наук, доцент, кафедра системы обработки информации и управления, Московский государственный технический университет им. Н. Э. Баумана, г. Москва

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

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

Введение

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

Проблемы нечеткости

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

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

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

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

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

возможно, вершинам) которого в соответствие поставлены веса. Задана матрица смежности Ш = [и/у]пхп, где п - число вершин графа, и/у - вес ребра между вершинами I и у. Вершину когнитивной карты - фактор, влияющий на развитие ситуации, назовем концептом С, при этом ребра графа отображают причинно-следственные связи между концептами. Понятно, что концепты могут по-разному влиять друг на друга: влияние может быть положительным (знак «+»), усиливающим фактор-следствие при усилении фактора-причины, и отрицательным (знак «—», когда усиление фактора-причины ведет к ослаблению фактора-следствия). Сила влияния одного концепта на другой определяется весом соответствующего ребра, связывающего эти два концепта. Если вес ребра и/у = 0 , то считается, что факторы I и никак не связаны между собой и не оказывают влияния друг на друга.

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

Таблица 1. Матрица смежности когнитивной карты

Выполнение проекта Выбор технологии Знания Сложность реализации Время разработки Документация Оценка возможностей Наличие экспертов

Выбор технологии 0.00 0.10 0.50 -0.40 0.00 0.30 0.30

Знания 0.30 0.00 -0.30 -0.50 0.00 0.50 0.00

Сложность реализации 0.50 0.40 0.00 0.60 0.00 0.20 0.00

Время разработки 0.20 0.00 -0.30 0.00 0.00 0.30 0.00

Документация 0.60 0.30 -0.30 -0.30 0.00 0.50 0.00

Оценка возможностей 0.40 0.00 0.20 0.10 0.00 0.00 0.00

Наличие экспертов 0.30 0.50 -0.40 -0.20 -0.20 0.50 0.00

На основе этой матрицы смежности с помощью инструмента РСМарреге [1] можно задать стартовые веса концептов, т.е. фактически задать решение, которое лицо, принимающее решение (ЛПР) может принять и посмотреть на сценарий развития событий. По завершении работы с БСМаррег можно визуализировать заданную когнитивную карту с помощью инструмента Ра]ек [2].

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

II1Н-1 <5. М Энврнн

Рис. 1. Когнитивная карта «Выполнение процесса»

Программа Ра]ек [2] позволяет строить различные отображения когнитивных карт, используя различные алгоритмы построения итогового изображения карты. Однако существенным минусом данной связки является невозможность просмотреть изменения в динамике. Единожды задав исходные веса и просчитав сценарий для них, мы получаем результат, не имея при этом возможности как посмотреть на изменения в процессе моделирования, так и внести какое-либо корректирующее воздействие.

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

Нечеткой когнитивной картой принято считать когнитивную карту, веса которой заданы на интервале [— 1 ; 1 ] и отражают силу влияния одного фактора на другой, значения самих факторов задаются лингвистически, с помощью естественного языка. Следует отметить, что для каждого фактора может быть задана своя шкала. Рассматриваемая карта относится к классу детерминированных карт, в которой вес определяет силу влияния одного фактора на другой. Недетерминированная когнитивная карта строится на основе уверенности эксперта в том, что два фактора связаны между собой, т.е. вес ребра отражает уверенность эксперта в наличии связи между ребрами.

Рассмотрим подробнее детерминированные нечеткие когнитивные карты.

Состоянием ситуации в момент времени / называется вектор У^) = (уО, у2(V, ... у„(0) где у; ( £) - переменная, отражающее значение фактора в момент времени t. Все переменные в векторе состояния ситуации имеют лингвистические значения, причем каждое значение принадлежит собственной шкале фактора . Для того чтобы производить какие-либо вычисления над вектором состояния ситуации необходимо задать отображение лингвистической шкалы фактора в числовую шкалу. = - лингвистическая шкала значений фактора , причем из соотношения к < I следует, что г; ^ < г; ¡. Так как для каждого фактора шкала значений может отличаться, то число элементов шкалы г определяется экспертом при составлении шкалы значений фактора. Зададим отображение : — [ 0 ; 1 ] . Разобьём отрезок [ 0 ; 1 ] на множество частей г, равному количеству значений в шкале . В этом случае каждому значению шкалы будет соответствовать свой отрезок на отрезке [ 0 ; 1 ] , причем значение фактора отображается в середину этого отрезка: (г;Л) = (&/<_ х — , где и - начало и конец отрезка соответственно. Обратное отображение

14

<р_ 1: [ 0 ; 1 ] — является сюръекцией, так как множество точек отрезка (Ь^ _ 1 — Ь^) будут отображены в единственное /с. Определив числовые значения шкал значений факторов, зададим числовой вектор состояний системы = (У ( £) ) = ( (^ ( £ ) ) , . Этот вектор отражает состояние системы в числовом виде (пригодном, для дальнейших вычислений) в указанный момент времени /.

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

Метод получения прогноза с суммированием приращений используется в системе «Ситуация». Метод впервые был предложен Робертсом в его работе [3]. Рассчитывается вектор прогнозных приращенийР ( £ + 1 ) , его компоненты вычисляются по следующей формуле: . В этом случае вектор состояний системы

представляется как некое начальное значение (в нулевой момент времени) и сумму приращений до указанного момента времени. Компонента вектора X ( £) : хг ( £) = хг ( 0 ) + £ Пр(£). Из формулы следует, что значение вектора состояния системы в заданный момент времени есть накопление всех приращений за прошедшие промежутки времени. Положив начальное состояние равным 0 (хг ( 0 ) = 0 ) получим хг ( £) = £ ПР г ( £) -изменение состояния системы с течением времени £. Такое значение может быть легко отображено обратно в лингвистическую оценочную шкалу.

Метод получения прогноза без суммирования приращений используется в системах «Компас» и «Канва» и основан на правиле max-product:

р( 0 = т а^-м/ур; ( 0 ) .

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

Г,  |р,+ (£ + 1)+рга + 1)1

Используя консонанс и вектор состояния системы, получим пару <Х(^), С(^)>, позволяющую оценить состояние системы в заданный момент времени /.

Верификация когнитивной карты

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

1) Приращение факторов происходит не моментально, а постепенно, тем самым делая ситуацию динамической. Задержки распространения влияний факторов и их приращений никак не учитываются при моделировании.

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

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

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

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

Прямая верификация когнитивной карты

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

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

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

2) Риск неверной математической интерпретации смысла связи между факторами. Такой риск приводит к тому, что вес связи или уверенность в ней задана некорректно, что повлияет на все расчеты в будущем.

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

Корректировка когнитивной карты

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

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

Создание программной системы на основе гибридной интеллектуальной системы (ГИС).

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

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

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

На основе проведенного анализа предлагается создание программной системы на основе гибридной интеллектуальной системы (ГИС), объединяющей несколько подходов для создания когнитивных карт и дающей возможность получать и анализировать результаты, полученные различными методами, как отдельно друг от друга, так и в составе гибрида, усиливающего достоинства и ослабляющего недостатки отдельных методов.

Литература

1. [Электронный ресурс]: FCMappers. Режим доступа: http://www.fcmappers.net/joomla/ (дата обращения: 05.05.2016).

2. [Электронный ресурс]: Pajek: analysis and visualization of large networks. Режим доступа: http://pajek.imfm.si/ (дата обращения: 05.05.2016).

3. Робертс Ф. С. Дискретные математические модели с приложением к социальным, биологическим и экологическим задачам. М.: Наука, 1986.

4. Eden C. Cognitive mapping // European Journal of Operation - al Research. 1988. N 36. P. 1—13.

5. Кулинич А. А. Компьютерные системы моделирования когнитивных карт: подходы и методы. Control Sciences № 3, 2010.

6. Силов В. Б. Принятие стратегических решений в нечёткой обстановке. М.: ИНПРО-РЕС, 1995. 228 с.

7. Кулинич А. А. Когнитивная система поддержки принятия решений «Канва» // Программные продукты и системы, 2002. N 3. С. 25—28.

8. Кулинич А. А., Максимов В. И. Система концептуального моделирования социально-политических ситуаций «Компас» // Сб. докл. «Современные технологии управления». Науч.-практ. семинар «Современные технологии управления для администрации городов и регионов». М., 1998. С. 115—123.

9. Кузнецов О. П. Интеллектуализация поддержки управляющих решений и создание интеллектуальных систем. - SPECIAL ISSUE «CONTROL SCIENCES» 1 3.1 2009.

10. Kosko B. Fuzzy Cognitive Maps // International Journal of Man-Machine Studies, 1986. 24. Р. 65—75.