Базовая конфигурация системы СВИРЬ-Р представляет собой совокупность ресурсов, требующихся для проектирования модели выбора, решения контрольной задачи и обмена информацией с процессором MS Excel. В качестве контрольной задачи принята задача нахождения рейтинга объектов относительно общей цели. Для выполнения лабораторного практикума по теории принятия решений [4] выделяются ресурсы для применения всех методов выбора с ограничением на размерность модели и на сервисные функции.
Литература
1. Микони С.В. Теория и практика рационального выбора. М.: Маршрут, 2004. 462 с.
2. URL: www.pgups.ru/nauka/mikoni/ (дата обращения: 10.07.2009).
3. Микони С.В. Многокритериальный выбор на конечном множестве альтернатив: учеб. пособие. СПб: Лань, 2009. 273 с.
4. Микони С.В., Гарина М.И. Лабораторный практикум по дисциплине «Теория принятия решений»: учеб. пособие. СПб: ПГУПС, 2009. 97 с.
СИСТЕМА ВЫЧИСЛЕНИЯ ПРИОРИТЕТОВ НА ОСНОВЕ МАТРИЦ ПАРНЫХ СРАВНЕНИЙ
И.С. Киселёв; С.В. Микони, д.т.н.
(Петербургский государственный университет путей сообщения, svm@sm4265.spb.edu)
Описывается система, функционирующая в составе программной системы СВИРЬ-Р в качестве динамической библиотеки. Она предназначена для формирования матриц парных сравнений, анализа их согласованности и вычисления приоритетов сущностей. Алгоритм вычисления приоритетов инвариантен относительно четырех типов матриц, реализуемых в системе. Метод анализа иерархий реализуется совместно с системой СВИРЬ-Р относительно сформированной в ней модели выбора.
Ключевые слова: матрица парных сравнений, экспертное предпочтение, приоритет сущности, согласованность предпочтений, многокритериальная оптимизация.
Усилиями американского математика Томаса Саати метод анализа иерархий (МАИ) получил широкое распространение [1]. Он имеет многочисленные программные реализации. Метод основан на использовании матриц парных сравнений (МПС), содержащих кратные предпочтения. Под кратным предпочтением ак"у понимается превосходство ¡-й сущности \| над .¡-й сущностью х^ ^еХвкраз, ке[0,1; 10].
Однако, кроме использования в МАИ, МПС имеют самостоятельную ценность. Они могут использоваться в задачах распределения ресурсов, расчета приоритета сущностей, вычисления весовых коэффициентов для обобщающих функций в задачах скалярной оптимизации [2], а также отражать и другие типы предпочтений - ординальные (факты предпочтений), вероятностные предпочтения (в долях от 1), соотношения выигрышей и потерь. Помимо субъективных (экспертных) предпочтений, МПС могут отражать объективные предпочтения, такие как результаты футбольного первенства или товарообмен между хозяйствующими субъектами.
Таким образом, в качестве объекта программной реализации целесообразно использовать не метод анализа иерархий, а его важнейшее звено -МПС как более универсальную модель. Этот принцип реализован в программной системе, названной системой вычисления приоритетов (СВП). В статье излагаются возможности этой системы.
Создание МПС
Программная система СВП реализована в виде динамической библиотеки системы выбора и ранжирования СВИРЬ-Р. Из системы СВИРЬ-Р задаются перечень сопоставляемых сущностей, размерность и тип матрицы. В саму систему возвращается вектор нормированных приоритетов, сформированный на основе МПС. Тип МПС (кратности предпочтений, фактов предпочтений, долей от 1 или отношения «Выигрыши/Потери») может задаваться также и внутри системы СВП.
Содержимое МПС может вводиться напрямую экспертами через клавиатуру либо из табличного процессора Excel, содержащего известные предпочтения - экспертные или объективные. Матрица может формироваться автоматически на основе вектора приоритетов, заданного в интервальной шкале. Такая матрица имеет стопроцентную согласованность и в случае количественных предпочтений называется сверхтранзитивной. Пример задания вектора приоритетов (в процентах) для четырех признаков приведен на рисунке 1. В правой части вкладки «Задание» выбираются тип МПС, максимальная кратность предпочтения (по умолчанию 10), а также способ автоматического формирования содержимого матрицы.
Содержимое МПС, полученное вручную или автоматически, фиксируется на вкладке «Предпочтения» (рис. 2).
Ручное задание и редактирование предпочтений осуществляются на правой стороне вкладки.
В верхней ее части фиксируются имена сопоставляемых сущностей. Каждому типу матрицы соответствуют три ряда окошек ввода. При вводе предпочтения в выбранное окошко его значение пересчитывается в окошках других типов матриц. Универсальным способом ввода является использование движка на биполярной шкале. Ввод единицы и нуля в матрицу фактов предпочтений осуществляется отклонением движка вправо/влево от точки «Равноценны».
За исключением МПС «Выигрыши/Потери», остальные типы матриц симметричны относительно главной диагонали. Это позволяет заполнять клетки только одной треугольной подматрицы. Значения (N(N-^/2) клеток симметричной треугольной подматрицы вычисляются на основе свойства симметрии.
Рис. 2. Вкладка «Предпочтения» СВП
При формировании МПС большой размерности эксперты испытывают трудности в нахождении предпочтений для всех пар сущностей. Поскольку в таких случаях некоторые клетки матрицы оказываются пустыми, возникает проблема их заполнения. Она может решаться как формированием подсказок экспертам, так и путем автоматического вычисления предпочтений. Для реализации обоих способов требуется дополнительная информация. В качестве таковой логично использовать условие неухудшения согласованности предпочтений, присущих исходной матрице.
Наиболее очевидным является соблюдение условия порядковой согласованности МПС, заключающееся в обеспечении транзитивности предпочтений. Оно напрямую реализуется для
МПС фактов предпочтений в процессе построения замыкающей дуги aik относительно уже введенных предпочтений aij и ajk. Элемент aik МПС служит подсказкой для ввода последующих предпочтений, что исключает возможную противоречивость предпочтений (возникновение циклов в графе).
Минимальное число предпочтений, необходимое для построения транзитивного замыкания графа, определяется гамильтоновой цепью, включающей все сопоставляемые сущности (вершины графа доминирования). Поскольку гамиль-тонова цепь связывает N вершин графа N—1 дугами, минимизация ввода предпочтений достигается путем выбора только тех пар, в которых одна из сущностей не встречалась в предыдущих парах. Например, семью сравнениями вместо N(N-1)/2=28 можно ограничиться при формировании матрицы размерностью 8x8.
Для матриц с количественными предпочтениями недостаточно построить транзитивное замыкание графа доминирования. Необходимо определить способ нахождения количественных оценок предпочтений. Он основан на нахождении таких чисел в пустых клетках матрицы, которые доставляют максимум функции согласованности. Максимум достигается при Àmax-»n, где А,тах -максимальное собственное число матрицы, n - ее размерность [3].
Анализ свойств МПС выполняется на вкладке «Результат» (рис. 3).
Поскольку матрица на рисунке 2 построена на основе вектора приоритетов (рис. 1), она полностью согласована, что указывает на отсутствие циклов в графе предпочтений, полученном для этой матрицы (см. рис. 3). При необходимости выводится граф предпочтений. Его дуги в отсутствие циклов окрашены в черный цвет. С увеличением числа проходящих через них циклов предпочтений они розовеют. При наведении мыши на
вп - и - •/„• \
Анализ предпочтений О и:
4
Циклов
Согласованность предпочтений Порядковая |100.00 %
Выраженность предп. 130.51 %
Настройка приоритетов Взаимосвязь сущностей (К)
...........о
-5 Баланс сил 0 Учёт сил +5 Различимость приоритетов (С)
0.1
20
№ Сущности ЩПервый взнос, X
2 Комиссия банка, X
3 Рассмотрения заявки, дни
4 Расходы на оформление
П риорите Гистограмма приоритетов Ранг
0.36978 | 1
0.29607 2
0.11179 4
0.22236 3
Рис. 3. Вкладка «Результат» СВП
дугу приводится список проходящих через нее циклов.
Показатель выраженности предпочтений отражает степень несимметричности элементов относительно главной диагонали. Для матрицы кратности предпочтений вычисляется коэффициент количественной (кардинальной) согласованности по формуле, предложенной Т. Саати.
В правой части вкладки «Результат» задаются параметры вычисления приоритетов сущностей и результаты вычислений, представленные в абсолютной и порядковой шкалах. Приоритеты сущностей вычисляются на основе матрицы А по итерационной формуле: \¥=(с-А + Е)к-ет, где Е - еди-
1Т
.. ; е - транспонированный вектор текущих приоритетов с единичными начальными значениями.
Регулируемые параметры с и к представляют собой масштабный коэффициент (с>1) и степень матрицы. Увеличение масштабного коэффициента улучшает различимость приоритетов, а при к—>оо величина приоритетов учитывает результаты взаимодействия сущностей между собой, то есть их силу. Изменение приоритетов сущностей в зависимости от значения степени к, измеренной в логарифмической шкале, иллюстрируется графиком (рис. 4).
СВП может использоваться для многокритериальной оптимизации по методу Саати. Участвующие в оптимизации МПС формируются как экспертами, так и автоматически, по значениям признаков из таблицы системы СВИРЬ-Р. Формирование МПС на основании столбца таблицы осуществляется попарным сравнением его значений. В этом режиме из системы СВИРЬ-Р задаются не только список сущностей и тип МПС для каждого признака, но и параметры вычисления приоритетов с и к. Указывается также способ формирования МПС.
Многокритериальная оценка приоритета сущностей вычисляется перемножением матрицы
Рис. 4. График изменения приоритетов
приоритетов сущностей по каждому из критериев на вектор важности этих критериев. Он задается из системы СВИРЬ-Р либо вычисляется на основе экспертных предпочтений в системе СВП. МАИ реализуется путем вычисления приоритетов в таблицах иерархии от листовых до корневой.
Результаты однокритериальной и многокритериальной оптимизации возвращаются в таблицы «Решение» системы СВИРЬ-Р. Содержимое МПС с оценками их согласованности и выраженности предпочтений, а также приоритеты сущностей экспортируются в табличный процессор MS Excel для документирования и последующей обработки.
Литература
1. Саати Т.Л. Принятие решений при зависимостях и обратных связях. М.: Изд-во ЛКИ, 2007. 357 с.
2. Микони С.В. Многокритериальный выбор на конечном множестве альтернатив: учеб. пособие. СПб: Лань, 2009. 273 с.
3. Микони С.В., Киселев И.С. Приближенный метод доопределения матрицы парных сравнений с кратными предпочтениями // IEEE AIS'07; CAD-2007: тр. конф. (Дивноморское, 3-9 сентября 2007 г.). М.: Наука. Физматлит, 2007. Т. 1. С. 330335.
ОНТОЛОГИИ ДЛЯ РЕАЛИЗАЦИИ ОБРАТНОЙ ТРАССИРОВКИ ПРИ РАЗРАБОТКЕ И СОПРОВОЖДЕНИИ ПРОГРАММ.
В.В. Рогальчук; А.Д. Хомоненко, д.т.н.
(Петербургский государственный университет путей сообщения, joawl@mail.ru, khomon@mail.ru)
Дается краткая характеристика метода обратной трассировки кода, направленного на улучшение понимаемости программ в процессе их разработки и сопровождения. Обосновывается применение онтологий как средства представления знаний в процессе разработки и сопровождения программ. Предлагается вариант онтологии, предназначенной для представления знаний в процессе отслеживания и устранения ошибок программного проекта.
Ключевые слова: обратная трассировка программ, онтологии, представление знаний, разработка программ, сопровождение программ, программное обеспечение, ошибки, отношения.
На эффективность процессов разработки и сопровождения программного обеспечения (ПО)
большое влияние оказывает используемая технология. Одним из подходов, способствующих по-