УДК 004.896; 519.876.5
К.А. Аксенов, Е.М. Сафрыгина, Л.Г. Доросинский
расширение интеллектуальных средств поддержки принятия решений и имитационного моделирования
нечеткой логикой
В статье рассматриваются некоторые технологии интеграции интеллектуальных средств поддержки решений (СППР) в состав BPsim4, базирующихся на аппарате нечеткой логики, в частности, расширение системы моделирования BPsim.MAS аппаратом нечеткого управления (нечетких контроллеров) и реализация системы многокритериального анализа по схеме Беллмана-Заде на базе модуля BPsim.MSN.
BPsim4 - многофункциональный программный комплекс поддержки принятия решений в сфере управления организационно-техническими системами (ОТС) [1]. Комплекс BPsim4 в настоящий момент состоит из двух основных программных модулей: системы динамического моделирования мультиагентных процессов преобразования ресурсов (МППР) BPsim.MAS и системы технико-экономического проектирования организационно-технических систем BPsim.MSN. При разработке данных модулей использовались технологии мультиагентного, ситуационного, имитационного и экспертного моделирования.
Реализация аппарата нечеткого управления на базе модуля имитационного моделирования BPsim.MAS
Нечеткая логика предназначена для формализации человеческих способностей к неточным или приближенным рассуждениям, которые позволяют более адекватно описывать ситуацию с неопределенностью. Методы нечеткой логики полезны при моделировании сложных технологических и бизнес-процессов, если моделируемые объекты являются слишком сложными для анализа с помощью общепринятых количественных методов или когда доступные источники информации интерпретируются качественно, неточно или неопределенно (например, эвристические знания экспертов, представленные в виде выражений на естественном языке). Исходным понятием нечеткой логики является понятие элементарного нечеткого высказывания - повествовательного
предложения, выражающего законченную мысль, относительно которой можно судить об ее истинности или ложности с некоторой степенью уверенности.
Так, при проектировании моделей технологических процессов (например, цикла фабричного производства) аппарат нечеткого управления может быть использован в качестве механизма саморегуляции или генерации случайных внешних воздействий на систему; в бизнес-системах нечеткая логика интересна, прежде всего, как возможность использования базы эвристических знаний различных специалистов при моделировании бизнес-процессов, функций или проектов, реализуемых какой-либо компанией.
В приведенных выше примерах, т. е. при разработке динамических моделей процессов преобразования ресурсов, нечеткая логика используется как один из элементов алгоритмического обеспечения системы моделирования и реализуется при помощи аппарата нечетких контроллеров. Общая схема такого контроллера приведена на рис. 1. Обработка нечеткой информации осуществляется следующим образом: точные исходные данные с датчиков, контролирующих объект управления, переводятся в значения лингвистических переменных в специальном блоке, получившем название «фаззификатор». Далее реализуются процедуры нечеткого вывода на множестве продукционных правил, составляющих базу знаний системы управления, в результате чего формируются выходные нечеткие множества, которые переводятся в точные значения результатов вычислений в блоке «дефаззификатор». На выходе последнего формируются управляющие сигналы, подаваемые на исполнительные механизмы объекта управления [2].
Нечеткая база знаний предназначена для формального представления эмпирических знаний или знаний экспертов в той или иной проблемной области и представляет собой базу правил нечетких продукций, в которых условия и заключения сформулированы в терминах нечетких лингви-
Рис. 1. Концептуальная схема нечеткого контроллера
стических высказываний. Чаще всего база знаний/правил (БЗ) представляется в форме структурированного текста:
ПРАВИЛО_1. ЕСЛИ «Условие_1» ТО «Заключение_1»
ПРАВИЛО_2. ЕСЛИ «Условие_2» ТО «Заключение_2» (^2)
ПРАВИЛО_и. ЕСЛИ «Условие_и» ТО «Заключение^» (V), где V. ( е {/, 2, ..., и}) обозначают коэффициенты определенности или весовые коэффициенты соответствующих правил. Эти коэффициенты могут принимать значения из интервала 0^1.
Процедура нечеткого вывода по БЗ состоит из следующих шагов:
1. Фаззификация входных переменных. Под фаззификацией понимается процедура нахождения значений функций принадлежности нечетких множеств (термов) на основе обычных (не нечетких) исходных данных. Фаззификацию еще называют введением нечеткости.
2. Агрегирование подусловий в нечетких правилах продукций. Агрегирование представляет собой процедуру определения степени истинности условий по каждому из правил системы нечеткого вывода.
3. Активизация или композиция подзаключе-ний в нечетких правилах продукций. Активизация в системах нечеткого вывода представляет собой процедуру или процесс нахождения степени истинности каждого из подзаключений правил нечетких продукций.
4. Аккумуляция заключений нечетких правил продукций. Аккумуляция или аккумулирование в системах нечеткого вывода представляет собой процедуру или процесс нахождения функции принадлежности для каждой из выходных лингвистических переменных. Цель аккумуляции заключается в том, чтобы объединить все степени истинности заключения (подзаключений) для получения функции принадлежности каждой из выходных переменных.
5. Дефаззификация. Дефаззификация в системах нечеткого вывода представляет собой процедуру или процесс нахождения обычного (не нечеткого) значения для каждой из выходных лингвистических переменных. Цель дефаз-зификации заключается в том, чтобы, используя результаты аккумуляции всех выходных лингвистических переменных, получить обычное количественное значение (crisp value) каждой из выходных переменных, которое может быть использовано специальными устройствами, внешними по отношению к нечеткому контроллеру (блоком управления).
Технология реализации нечетких контроллеров в среде BPsim.MAS. Нечеткий контроллер в BPsim.MAS состоит из множества объектов, являющихся частью программной среды данного модуля - блоков (операций, агентов, правил, средств, ресурсов и заявок), с одной стороны, и множества объектов сервера MS SQL, с другой (библиотеки пользовательских процедур и функций, реализующих алгоритм нечеткого вывода, таблицы протоколирования заявок, триггера, запускающего алгоритм нечеткого вывода при пе-
Рис. 2. Схема взаимодействия BPSim.MAS и нечеткого контроллера
редаче в таблицу заявки соответствующего типа). Взаимодействие между исполняемой средой модуля BPsim.MAS и сервером в ходе работы контроллера осуществляется при помощи механизма пользовательских заявок, в которые могут быть «упакованы» все необходимые исходные данные, а также разделяемой таблицей протоколирования заявок MessPar_Protocol, расположенной на SQL-сервере. Схема взаимодействия модуля BPsim. MAS и сервера представлена на рис. 2.
Для исследования возможности применения интегрированной нечетко-имитационной среды BPsim.MAS при решении задач из области проектирования систем управления авторами выбрана модель «Разработка программного обеспечения», разработанная для Уральского государственного технического университета - УПИ (УГТУ-УПИ) два года назад [3]. Данная модель представляет собой реализацию водопадного и спирального вариантов развертывания программно-технического комплекса в рамках задачи обследования учебного процесса УГТУ и формирования ТЗ на единую информационную систему (ЕИС) университета и предназначена для оценки сроков выполнения проекта. При помощи аппарата нечетких контроллеров в данной модели решена задача автоматического подбора и регулирования состава команд исполнителей на различные этапы проекта. На рис. 3 представлена блок-схема модели с элементом нечеткого контроллера, содержащего базу продукционных правил, которые используются руководителями проектов при наборе исполнителей в проектные команды, а также блоки для загрузки исходных данных на сервер и выгрузки результатов их обработки. Результатом работы нечеткого контроллера являются показатели численного состава команд системных аналитиков, архитекторов, программистов и тестировщиков.
Реализация алгоритма многокритериального анализа в BPsim.MSN
Еще одним перспективным приложением нечеткой логики в составе программного комплекса BPsim4 является реализация систем оценки альтернативных вариантов решения на основе технологии нечеткого многокритериального анализа (при решении задач бизнес-планирования и технико-экономического проектирования ОТС). Применение данного метода позволяет решить проблему представления и обработки нечетких исходных данных, изначально собранных в виде сравнительных экспертных оценок, при проектировании проблемно-ориентированных СППР в BPsim.MSN.
При нечетком многокритериальном анализе альтернативных вариантов используется схема Беллмана-Заде [3]. Если множество вариантов обозначить через X = {хр х2, ..., хк}, а множество различных критериев оценки данных вариантов через G = G2, ..., Gn}, то наилучший вариант из X рассчитывается как элемент с наибольшим значением степени принадлежности к нечеткому множеству:
Ъ = Gx п G2 П...П Gn =
mrnVp.(x) mrnVp.(Хи)
i а1,П ' i а1 n '
min Vp.. (xk )
i al П
где
G a-
Vpi (x1) Vpi (x2) VGi (xk )
(1)
(2)
а ^ (х.) - степень принадлежности варианта х.
нечеткому множеству Gi. _
Значения (х.), у = 1, к рассчитываются как координаты собственного вектора Ж = w2, ..., м!п) матрицы Л. парных сравнений вариантов {хк} по каждому критерию G.:
x
x
x
k
2
x
x
x
2
k
Рис. 3. Модель управления разработкой программного обеспечения (ПО) с элементом нечеткого
контроллера в среде BPsim.MAS
Собственный вектор Ж, соответствующий наибольшему по величине собственному значению Xтах симметричной матрицы А может рассчитываться при помощи численного алгоритма степенного метода [4]. Данный метод выполняет итерации для вектор-функции ф(у) = ±т^г.
" н
Итерации начинаются с единичного вектора е и дают последовательность векторов еп+1 = ф(еп). Применение степенного метода при нахождении собственного вектора матрицы позволяет реализовать алгоритм нечеткого анализа в виде набора процедур на языке T-SQL, являющемся встроенным языком BPsim.MSN.
Ху х2 ■ ч
ап «12 • ■■ а\к
А = Х2 «21 а22 •• а2к ,1=й (3)
ч а2к ■■ акк
где а.. - уровень преимущество проекта х. над х.
У . J
по отношению к критерию G.. Значения а.. определяются по девятибалльной шкале Саати: 1 - если отсутствует преимущество элемента х . над элементом х.;
3 - если имеется слабое преимущество х над х.; 5 - если имеется существенное преимущество х над х.;
7 - если имеется явное преимущество х. над х.; 9 - если имеется абсолютное преимущество х над х.;
2, 4, 6, 8 - промежуточные сравнительные оценки, полученные из базовых оценок 1, 3, 5, 7, 9 путем добавления модальных значений «очень» и «почти».
Реализация алгоритма нечеткого многокритериального анализа в СППР
В качестве объекта для внедрения рассмотренного выше метода нечеткого анализа в среде программного модуля BPsim.MSN выбрана модель «Анализ и выбор путей реализации ЕИС университета» [3]. Данная модель является частью
комплекса моделей «Управление инфраструктурой вуза», с помощью которого были проанализированы и обоснованы управленческие решения в области информатизации УГТУ-УПИ.
В ходе проектирования модели разработки и внедрения ЕИС были определены следующие возможные альтернативы:
x0 - разработка и внедрение ЕИС совместно с компанией NAUMEN;
x2 - собственная разработка модулей ЕИС и их внедрение, например на основе средств разработки компании MICROSOFT;
x3 - адаптация ЕИС Академии народного хозяйства (АНХ);
x4 — внедрение решения IBS; x5 — внедрение решения «Университет» компании REDLAB на базе ERP-системы SAP.
Для оценки данных проектных альтернатив предлагалось использовать следующие критерии (при этом точная количественная информация по данным показателям отсутствовала):
01 - общая стоимость проекта;
02 - затраты на внедрение;
03 - эксплуатационные затраты;
04 - капитальные затраты;
05 — наличие опыта внедрения;
06 - функциональные характеристики.
При экспертном сравнении проектов х1, ..., х4 по критериям 01, 02, ..., 06 были получены следующие лингвистические высказывания (табл. 1).
Модель нечеткого анализа вариантов внедрения/реализации ЕИСУ реализована в среде BPsim.MSN - визуальном конструкторе фреймовых экспертных систем, основанном на ряде графических нотаций, включающем диаграммы следующих типов:
диаграмму классов, в которой содержится описание концептуальной модели предметной области, включающее данные по проектам, критерии сравнения и сравнительные характеристики, шкалу парных сравнений (Саати), перечень
Таблица 1
Парные сравнения проектов ЕИС по шкале Саати
Критерий Парные сравнения
G, Отсутствие преимущества хг над Х5 Существенное преимущество хг над хз Явное преимущество х\ над ха, Абсолютное преимущество х\ над Х5 Существенное преимущество Хз над Х4 Абсолютное преимущество хз над Х5 Абсолютное преимущество Х4 над х\
G2 Явное преимущество хз над Х\ Слабое преимущество хз над хг Слабое преимущество хз над Хй, Существенное преимущество хз над Х5 Слабое преимущество хг над Х4 Существенное преимущество Х2 над Х5 Явное преимущество хг над XI Почти существенное преимущество Х4 над Явное преимущество Х4 над XI Явное преимущество Х5 над х\
G3 Отсутствие преимущества хг над хз Существенное преимущество хг над Х4 Явное преимущество хг над х\ Явное преимущество хг над Х5 Существенное преимущество Х4 над Х5 Явное преимущество Х4 над х\ Почти существенное преимущество Х5 над х\
G4 Явное преимущество хг над хз Абсолютное преимущество хг над Абсолютное преимущество хг над Х4 Абсолютное преимущество хг над Х5 Явное преимущество хз над Х4 Абсолютное преимущество хз над Х5 Абсолютное преимущество хз над х\ Явное преимущество Х4 над Х5 Абсолютное преимущество Х4 над Х1 Абсолютное преимущество Х5 над х\
Gs Явное преимущество х\ над Х4 Абсолютное преимущество х1 над Хг Абсолютное преимущество х\ над хз Абсолютное преимущество Х\ над Х5
G6 Отсутствие преимущества хг над Х5 Отсутствие преимущества хг над Х4 Слабое преимущество хг над х\ Существенное преимущество над хз Явное преимущество х\ над хз
Рис. 4. Диаграмма классов для модели «Анализ и выбор путей реализации ЕИС университета»
вычислительных процедур, входящих в состав алгоритма нечеткого анализа, реализованных на языке T-SQL, а также ряд служебных таблиц, необходимых для хранения промежуточных результатов на различных этапах выполнения нечеткого анализа (рис. 4);
диаграмму потоков данных, которая затем
может быть преобразована в диаграмму прецедентов средствами BPSim.MSN;
диаграмму последовательностей. При помощи данной диаграммы определяется последовательность выполнения процедур, входящих в состав алгоритма нечеткого многокритериального анализа.
Рис. 5. Вид диалогового окна с результатами проигрывания модели
Таблица 2
Результаты вычисления характеристик проектов
XI (Naumen) Х2 (Собственная разработка) Хз (АНХ) Хф (IBS) х5 (RedLab)
Значение степени принадлежности 0,14 0,08 0,11 0,13 0,09
Длительность проекта, лет 5 12 8 7 3
Общая стоимость, млн руб. 30 70 45 52 270
Цикл моделирования (подготовка и загрузка исходных данных, выполнение процедур алгоритма нечеткого анализа, получение и вывод результатов) реализуется при помощи модуля поиска решения, который осуществляет пошаговое выполнение диаграммы последовательностей и выводит результаты выполнения в диалоговом окне. Результаты моделирования выгружаются в таблицу «Результирующий вектор» в виде вектора показателей степеней принадлежности цО (хг), г = 1,5~ к результирующему нечеткому множеству О(1-2). На рис. 5 представлен вид окна поиска решения после завершения проигрывания модели. Результирующий вектор и характеристики проектов, полученные по результатам ИМ, представлены в табл. 2.
Как следует из представленных в таблице результатов, наиболее эффективным проектом для реализации и внедрения с точки зрения цены и
качества является проект x1 с наибольшим показателем (xf) - NAUMEN. Ненамного отстают проекты x3 и x4 - АНХ и IBS. Проект RedLab слишком дорог по цене. Проект x2 «Самостоятельная разработка и внедрение ЕИС» имеет наименьший показатель (xf) из-за отсутствия внедрения и высокой стоимости, по сравнению с остальными проектами.
В данной статье рассмотрены различные технологии применения методов нечеткого моделирования и анализа в составе программного комплекса мультиагентного моделирования BPsim4. Данные методы уже нашли успешное применение при разработке пакета моделей управления инфраструктурой вуза, которые использовались в качестве программных СППР на различных этапах разработки и внедрения единой информационной системы УГТУ-УПИ.
Работа выполнена в рамках госконтракта 02.740.11.0512.
СПИСОК ЛИТЕРАТУРЫ
1. Аксенов, К.А. Разработка и применение объектно-ориентированной системы моделирования и принятия решений для мультиагентных процессов преобразования ресурсов [Текст]/К.А. Аксенов, И.И. Шо-лина, Е.М. Сафрыгина//Научно-технические ведомости СПбГПУ Сер. Информатика. Телекоммуникации. Управление.-2009.-№ 3 (80). -С. 87-97.
2. Деменков, Н.П. Нечеткое управление в технических системах: Учеб. пособие [Текст]/ Н.П. Деменков.-М.: Изд-во МГТУ им. Н.Э. Баумана, 2005.-200 с.
3. Аксенов, К.А. Поддержка принятия решений в сфере управления проектами информатизации [Текст]/ К.А. Аксенов, Д.М. Колосов, Е.Ф. Смолий//Новые образовательные технологии в вузе: Сб. докл. V Между -нар. науч.-метод. конф.-Екатеринбург УГТУ-УПИ, 2008.-Ч.1.-С. 414-420.
4. Волков, Е.А. Численные методы: Учеб. пособие для вузов [Текст]/Е.А. Волков.-М.: Наука, 1987. -2-е изд., испр.-248 с.