Метод анализа иерархий эксель
На этом шаге мы рассмотрим реализацию метода анализа иерархий в Excel .
Шаблон (рис. 1) разработан для решения задач принятия решений, у которых максимальный размер матриц сравнения не превышает 8x8.
На рис. 1 показано применение этого шаблона для решения задачи примера шага 55. Матрицы сравнения вводятся по одной за раз в верхнюю часть раздела входных данных. Порядок, в котором вводятся матрицы сравнения не важен, тем не менее, будет больше пользы, если рассматривать их в порядке иерархии.
После ввода коэффициентов матрицы сравнения в разделе выходных результатов в нижней части рабочего листа появится соответствующая нормированная матрица, а также ее коэффициент согласованности CR .
Далее следует скопировать значения весов w в столбце J и вставить их в область Краткий отчет решения (правая часть таблицы). Для вставки нужно выполнить команду Вставка | Специальная вставка | Значения , чтобы скопировать значения, а не формулы. Эти действия следует повторять для всех матриц сравнения.
Рис. 1. Решение задачи методом иерархии в Excel
Шаблон вы можете посмотреть здесь.
После того как в столбцах K:R будут записаны значения весов для всех матриц сравнения, можно использовать эти данные для создания формул, необходимых для сравнения альтернативных вариантов. Выполнить эту операцию в Excel несложно. На рис. 1 в диапазоне К20:К27 представлены результаты ранжирования альтернатив. В ячейке К20 содержится формула =$L$4*$L6+$L$3*$N6
По этой формуле вычисляется оценка для университета А . После создания этой формулы, ее следует скопировать, а затем вставить в ячейки К21 и К22 . Во вставленных формулах относительные ссылки автоматически изменятся так, что новые формулы будут вычислять оценки для университетов В и С .
Процедуру вычисления оценок альтернативных вариантов можно без труда распространить на любое количество уровней иерархии. Если формула для первой альтернативы была создана правильно, то ее же можно использовать и для других альтернативных вариантов, просто скопировав ее в последующие строки того же столбца. Но не забывайте, что все ссылки на ячейки должны быть абсолютными, кроме ссылок на альтернативы, в которых фиксированным должен быть только столбец.
Даны условия двух задач по МАИ — для двух и для трех уровней иерархии. По каждой из задач приведены (а) методические указания и таблицы по решению, (б) ответы для самопроверки, (в) скриншоты фрагментов листов excel с решением методом анализа иерархий и (д) предложения на продажу указанных файлов excel.
Задача 1 — для двух уровней иерархии: по выбору из трех альтернатив по восьми критериям сравнения
По методу анализа иерархий обоснуйте выбор одного средства измерения из трех вариантов:
- вариант 1 – высокочастотный аналоговый прибор с визуальным отсчетом (В1);
- вариант 2 – цифровой прибор (В2);
- вариант 3 – многофункциональная полуавтоматическая установка с выводом информации на экран (В3).
Каждая альтернатива оценивается по множеству критериев:
- точность (К1),
- диапазон (К2),
- быстродействие (К3),
- универсальность (К4),
- интенсивность эксплуатации (К5),
- стоимость (К6),
- простота и удобство эксплуатации (К7),
- габариты (К8).
Методические указания для решения
В процессе решения с использованием информации, представленной в таблицах 1.1 – 1.10, завершите их заполнение, используя описание этапов применения метода анализа иерархий, пример решения задачи методом анализа иерархий. Проверьте согласованность локальных приоритетов и достоверность полученного решения в целом. Проанализируйте полученные результаты.
Решение задачи 1.
Таблица 1.1. - Расчет значений приоритетов критериев сравнения
К1 | К2 | К3 | К4 | К5 | К6 | К7 | К8 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
К1 | 1 | 3 | 1 | 3 | 5 | 6 | 6 | 7 | |
К2 | 1 | 2 | 4 | 5 | 6 | 7 | 8 | ||
К3 | 1 | 2 | 5 | 6 | 6 | 7 | |||
К4 | 1 | 5 | 5 | 6 | 8 | ||||
К5 | 1 | 2 | 4 | 6 | |||||
К6 | 1 | 4 | 4 | ||||||
К7 | 1 | 2 | |||||||
К8 | 1 | ||||||||
Итого | |||||||||
λmax | |||||||||
ИС | |||||||||
ОС |
Таблица 1.2. - Расчет значений приоритетов средств измерения по критерию К1
К1 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | ||||
В2 | 5 | 1 | 2 | ||
В3 | 4 | ||||
Итого | |||||
λmax1 | |||||
ИС1 | |||||
ОС1 |
Таблица 1.3. - Расчет значений приоритетов средств измерения по критерию К2
К2 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 4 | |||
В2 | 1 | ||||
В3 | 4 | 7 | 1 | ||
Итого | |||||
λmax2 | |||||
ИС2 | |||||
ОС2 |
Таблица 1.4. - Расчет значений приоритетов средств измерения по критерию К3
К3 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 7 | 2 | ||
В2 | 1 | ||||
В3 | 7 | 1 | |||
Итого | |||||
λmax3 | |||||
ИС3 | |||||
ОС3 |
Таблица 1.5. - Расчет значений приоритетов средств измерения по критерию К 4
К4 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 8 | 3 | ||
В2 | 1 | ||||
В3 | 7 | 1 | |||
Итого | |||||
λmax4 | |||||
ИС4 | |||||
ОС4 |
Таблица 1.6. - Расчет значений приоритетов средств измерения по критерию К5
К5 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 1 | 1 | ||
В2 | 1 | 1 | |||
В3 | 1 | ||||
Итого | |||||
λmax5 | |||||
ИС5 | |||||
ОС5 |
Таблица 1.7. - Расчет значений приоритетов средств измерения по критерию К6
К6 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 7 | |||
В2 | 3 | 1 | 8 | ||
В3 | 1 | ||||
Итого | |||||
λmax6 | |||||
ИС6 | |||||
ОС6 |
Таблица 1.8. - Расчет значений приоритетов средств измерения по критерию К7
К7 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 5 | |||
В2 | 3 | 1 | 6 | ||
В3 | 1 | ||||
Итого | |||||
λmax7 | |||||
ИС7 | |||||
ОС7 |
Таблица 1.9. - Расчет значений приоритетов средств измерения по критерию К8
К8 | В1 | В2 | В3 | Средние геометрические | Нормализованный вектор приоритетов (НВП) –Вес критерия |
В1 | 1 | 2 | 5 | ||
В2 | 1 | 5 | |||
В3 | 1 | ||||
Итого | |||||
λmax8 | |||||
ИС8 | |||||
ОС8 |
Таблица 1.10. - Расчет приоритетности средств измерения по всем критериям
К1 | К2 | К3 | К4 | К5 | К6 | К7 | К8 | Итоговое значение приоритетов для каждого средства измерения |
В1 | ||||||||
В2 | ||||||||
В3 | ||||||||
ИС | ||||||||
ОИС | ||||||||
ООС |
Проверьте правильность решения задачи, сравнив полученный результат с приведенным ниже ответом по задаче.
Ответ задачи 1 (для самопроверки): Наиболее предпочтительным средством измерения является многофункциональная полуавтоматическая установка с выводом информации на экран (вариант 3) с итоговым значением приоритетов альтернатив, равным 0,397; менее предпочтителен высокочастотный аналоговый прибор с визуальным отсчетом (вариант 1) с итоговым значением приоритетов альтернатив, равным 0,338; наименее предпочтителен цифровой прибор с итоговым значением приоритетов альтернатив, равным 0,265.
Для самопроверки ниже также представлен скриншот листа excel с решением задачи.
Рис. Скриншот фрагмента листа excel с решением методом анализа иерархий задачи для двух уровней иерархии
Задача 2 — для трех уровней иерархии: по выбору из четырех альтернатив по семи критериям сравнения, сгруппированным в три группы
Обоснуйте с помощью метода анализа иерархий выбор одной из четырех систем хранения больших объемов информации. Выбор необходимо произвести с учетом семи факторов, сгруппированных в три группы: экономические, эргономические и физические группы факторов. Иерархическое представление задачи приведено на рисунке, где буквами Е обозначены критерии оценки задачи, А – возможные альтернативы. Предпочтительности критериев сравнения и альтернатив известны и представлены в таблицах 2.1 и 2.2.
Рис. Иерархическое представление критериев решения задачи
Таблица 2.1. - Предпочтительности критериев сравнения
Наименование факторов (критериев) | Значимости факторов (критериев) | Интенсивность проявления предпочтительности критериев |
Группы факторов | Экономические факторы более значимы чем эргономические | 7 |
Экономические факторы более значимы чем физические | 5 | |
Физические факторы более значимы чем эргономические | 2 | |
Экономические факторы | «Сокращение штата обслуживания» (Е 3 2) более значимо чем «Взаимодействие с другими электронными объектами» (Е 3 1) | 5 |
«Оперативность» (Е 3 3)более значима чем «Взаимодействие с другими электронными объектами»(Е 3 1) | 5 | |
«Оперативность» (Е 3 3)более значима чем «Сокращение штата обслуживания» (Е 3 2) | 3 | |
Эргономические факторы | «Удобство использования» (Е 3 4)более значимо чем «Удобство ввода данных» (Е 3 5) | 3 |
Физические факторы | «Компактность» (Е 3 7)более значима чем «Вечное хранение» (Е 3 6) | 2 |
Таблица 2.2. — Предпочтительности альтернатив
Наименование критерия | Значимости альтернатив | ||
предпочтительность альтернатив | * | ||
Удобство ввода данных Е 3 5 | А1 более значима чем | А2 | 5 |
А3 | 3 | ||
А4 | 5 | ||
А2 более значима чем | А4 | 2 | |
А3 более значима чем | А2 | 5 | |
А4 | 5 | ||
Вечное хранение Е 3 6 | А1 более значима чем | А2 | 9 |
А3 | 1 | ||
А4 | 9 | ||
А2 более значима чем | А4 | 3 | |
А3 более значима чем | А2 | 9 | |
А4 | 9 | ||
Компактность Е 3 7 | А1 более значима чем | А2 | 7 |
А4 | 9 | ||
А2 более значима чем | А4 | 5 | |
А3 более значима чем | А1 | 3 | |
А2 | 8 | ||
А4 | 9 |
Примечание: в последней колонке (*) представлены величины интенсивности проявления предпочтительности альтернатив по шкале интенсивности от 1 до 9, где 1 соответствует равное важности, а 9 – очень сильному превосходству.
Методические указания к решению задачи 2.
В процессе решения необходимо составить и заполнить расчетные таблицы, используя описание этапов применения метода анализа иерархий и пример решения задачи методом анализа иерархий, по следующим этапам расчета:
- первоначально с использованием данных таблицы 2.1 необходимо рассчитать значения приоритетов групп факторов (критериев) сравнения;
- с использованием данных таблицы 2.1 необходимо рассчитать значения приоритетов критериев сравнения в составе каждой из группы факторов;
- с использованием данных таблицы 2.2 необходимо рассчитать значения приоритетов альтернатив — систем хранения информации — по каждому из семи критериев сравнения;
- по каждой из трех групп факторов (экономический, эргономических и физических) необходимо рассчитать приоритетность альтернатив — систем хранения информации;
- необходимо рассчитать итоговые значения приоритетов альтернатив — систем хранения информации — по всем группам факторам;
- проверить согласованность локальных приоритетов и достоверность полученного решения в целом;
- проанализировать полученные результаты.
Проверьте правильность решения задачи, сравнив полученный результат с приведенным ниже ответом по задаче.
Ответ задачи 2 (для самопроверки): Наиболее предпочтительной системой хранения больших объемов информации является БД (вариант 1) с итоговым значением приоритетов альтернатив, равным 0,53; менее предпочтителен вариант 3 (электронные таблицы) с итоговым значением приоритетов альтернатив, равным 0,31; наименее предпочтительны варианты 2 (картотека) и 4 (статистические и отчетные документы) с итоговыми значениями приоритетов альтернатив, равными по 0,08 каждое.
Для самопроверки ниже также представлен скриншот листа excel с решением задачи.
Рис. Скриншот фрагмента листа excel с решением методом анализа иерархий задачи для трех уровней иерархии
Общая характеристика метода анализа иерархий
Метод Анализа Иерархий (МАИ) – математический инструмент системного подхода к решению проблем принятия решений. МАИ не предписывает лицу, принимающему решение (ЛПР), какого-либо «правильного» решения, а позволяет ему в интерактивном режиме найти такой вариант (альтернативу), который наилучшим образом согласуется с его пониманием сути проблемы и требованиями к ее решению. Этот метод разработан американским ученым Томасом Л. Саати в 1970 году, с тех пор он активно развивается и широко используется на практике. Метод анализа иерархий можно применять не только для сравнения объектов, но и для решения более сложных проблем управления, прогнозирования и др.
Основным достоинством метода анализа иерархий является высокая универсальность – метод может применяться для решения самых разнообразных задач: анализа возможных сценариев развития ситуации, распределения ресурсов, составления рейтинга клиентов, принятия кадровых решений и др.
Недостатком метода анализа иерархий является необходимость получения большого объема информации от экспертов. Метод в наибольшей мере подходит для тех случаев, когда основная часть данных основана на предпочтениях лица, принимающего решения, в процессе выбора наилучшего варианта решения из множества существующих альтернатив.
В типичной ситуации принятия решения:
- рассматриваются несколько вариантов решения,
- задан критерий, по которому определяется в какой мере то или иное решение является подходящим,
- известны условия, в которых решается проблема, и причины, влияющие на выбор того или иного решения.
Постановка задачи в процессе применения метода анализа иерархий: Пусть имеется множество альтернатив (вариантов решений): В1, В2, … Вk. Каждая из альтернатив оценивается списком критериев: К1, К2, … Кn. Требуется определить наилучшее решение.
Этапы применения метода анализа иерархий:
1. Предварительное ранжирование критериев, в результате которого они располагаются в порядке убывания важности (значимости).
2. Попарное сравнение критериев по важности по девятибалльной шкале с составлением соответствующей матрицы (таблицы) размера (n х n). Система парных сведений приводит к результату, который может быть представлен в виде обратно симметричной матрицы. Элементом матрицы a(i,j) является интенсивность проявления элемента иерархии i относительно элемента иерархии j, оцениваемая по шкале интенсивности от 1 до 9, где оценки имеют следующий смысл:
- равная важность – 1;
- умеренное превосходство – 3;
- значительное превосходство – 5;
- сильное превосходство – 7;
- очень сильное превосходство – 9;
- в промежуточных случаях ставятся четные оценки: 2, 4, 6, 8 (например, 4 – между умеренным и значительным превосходством).
При этом при проведении попарных сравнений в основном ставятся следующие вопросы при сравнении элементов А и Б:
- какой из них важнее или имеет большее воздействие ?
- какой из них более вероятен?
- какой из них предпочтительнее ?
Затем формируется матрица (схема представлена в Таблице 2). В процессе заполнения матрицы если элемент i важнее элемента j, то клетка (i, j), соответствующая строке i и столбцу j , заполняется целым числом, а клетка (j, i), соответствующая строке j и столбцу i, заполняется обратным числом (дробью).
Например, если К1 умеренно превосходит К4, то в клетку (1;4) (на пересечении первой строки и четвертого столбца) ставится число 3, а в клетку (4;1) (четвертая строка первый столбец) – обратная величина, равная 1/3. Если же элемент j более важен, чем элемент i, то целое число ставится в клетку (j, i), а обратная величина – в клетку (i, j). Если считается, что i, j одинаковы, то в обе клетки ставится единица.
Заполнение таблицы (см.примерная схема в табл.2) проводится построчно с наиболее важного критерия. Сначала проставляют целочисленные оценки, тогда соответствующие им дробные оценки получаются из них автоматически (как обратные к целым числам). Чем важнее критерий, тем больше целочисленных оценок будет в соответствующей ему строке матрицы, и сами оценки имеют большие значения. Так как каждый критерий равен себе по важности, то главная диагональ матрицы всегда будет состоять из единиц. Очевидно, что сумма компонентов равна единице. Каждый компонент НВП представляет собой оценку важности соответствующего критерия (например, 1-й компонент представляет собой оценку важности первого критерия). где ПСС – показатель случайной согласованности, определяемый теоретически для случая, когда оценки в матрице представлены случайным образом, и зависящий только от размера матрицы, как это представлено в таблице 1:
Таблица 1 - Значение показателя случайной согласованности (ПСС)*
Размер матрицы | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
ПСС | 0 | 0 | 0,58 | 0,90 | 1,12 | 1,24 | 1,32 | 1,41 | 1,45 | 1,49 |
*Примечание:
Показатель Случайной Согласованности (ПСС) Т.Л.Саати называет Случайный индекс (СИ).
Значения ПСС (СИ) см, например, на с.25 Саати Т.Л. Принятие решений. Метод анализа иерархий. – М.: Радио и связь, 1993, на с. 137 Романов В.Н. Системный анализ для инженеров. – СПб.: СЗГЗТУ, 2006.
Оценки в матрице считаются согласованными, если ОС≤10-15%, в противном случае их надо пересматривать.
5. Проводится попарное сравнение вариантов по каждому критерию аналогично тому, как это делалось для критериев, и заполняются соответствующие таблицы (см.ниже – схема представлена в Таблице 3). Для каждой таблицы проводится проверка согласованности локальных приоритетов путем расчета трех характеристик (см.описание 4-го этапа).
6. Определяется общий критерий (приоритет) для каждого варианта:
К(В1) = оценка В1 по первому критерию х 1 й компонент НВП + оценка В1 по второму критерию х 2 й компонент НВП + … + оценка В1 по n му критерию х n й компонент НВП (6)
Аналогично подсчитываются К(В2), К(В3) и т.д., при этом в выражении В1 заменяется на В2 , В3 и т.д. соответственно. Заполняется таблица (см.ниже – схема представлена в Таблице 4).
7. Определяется наилучшее решение, для которого значение К максимально.
8. Проверяется достоверность решения:
8.1. расчет обобщенного индекса согласования:
ОИС = ИС1 х 1 й компонент НВП + ИС2 х 2 й компонент НВП + … + ИСnх n й компонент НВП (7)
8.2. расчет обобщенного отношения согласованности:
ООС = ОИС/ ОПСС (8)
где ОПСС определяется по таблице 1 на уровне ПСС (показателя случайной согласованности) для матриц сравнения вариантов по критериям.
Решение считается достоверным, если ООС≤10-15%, в противном случае нужно корректировать матрицы сравнения вариантов по критериям.
Таблица 2 - Форма таблицы сравнения критериев
К1 | К2 | …. | Кn | Средние геометрические | НВП(по фор-муле (2)) |
К1 | |||||
К2 | |||||
…. | |||||
Кn | |||||
ИТОГО | по формуле (1) | ||||
λmax | по форм. (3) | ||||
ИС | по форм. (4) | ||||
ОС | по форм. (5) |
Таблица 3 - Форма таблицы сравнения вариантов по критериям (заполняется по каждому j-му критерию сравнения Kj j=1,n)
На конкретном примере по шагам расписан расчет коэффициентов значимости подходов к оценке при определении итоговой величины стоимости бизнеса. Приведены (а) методические указания и таблицы по решению, (б) развернутые расчеты с цифрами и формулами, (в) ответы/ результаты расчетов, (д) предложения на продажу файлов excel с решением данного примера.
Задача. Методом анализа иерархий обосновать коэффициенты значимости (удельные веса) доходного, затратного, сравнительного подходов к оценке стоимости бизнеса для определения итоговой величины стоимости.
Решение. Расчет коэффициентов значимости методом анализа иерархий основан на выделении следующих параметров в качестве критериев сравнения подходов к оценке:
- А. возможность отразить действительные намерения продавца;
- Б. тип, качество, обширность данных, на основе которых проводится анализ;
- В. способность параметров используемых методов учитывать конъюнктурные колебания;
- Г. способность учитывать специфические особенности объекта, влияющие на его стоимость (местонахождение, размер, потенциальная доходность).
Нумерация формул, термины и этапы применения метода анализа иерархий рассмотрены выше (для просмотра перейдите по указанной активной ссылке).
Первоначально построена следующая матрица сравнения и рассчитаны значения приоритетов критериев.
Таблица 5 - Матрица сравнения и рассчитаны значения приоритетов критериев
А | Б | В | Г | Средние геометрические | Нормализованный вектор приоритетов (НВП) – Вес критерия (расчет по формуле (2)) | ||||
А | 1 | ½ | 3 | 2 | (1 ×1/2 × 3 ×2) 1/4 = | 1,32 | 1,32 /4,27 = | 0,31=НВПА | |
Б | 2 | 1 | 3 | 1 | (2 ×1 × 3 × 1) 1/4 = | 1,57 | 1,57/4,27 = | 0,37=НВПБ | |
В | 1/3 | 1/3 | 1 | 2 | (1/3 ×1/3 × 1 × 2) 1/4 = | 0,69 | 0,69/4,27 = | 0,16=НВПВ | |
Г | 1/2 | 1 | 1/2 | 1 | (1/2 ×1 × 1/2 × 1) 1/4 = | 0,71 | 0,71/4,27 = | 0,17=НВПГ | |
ИТОГО | (по формуле (1)) 4,27 | 1,00 | |||||||
λmax(по форм.(3)) | (1+2+1/3+½)×0,31 +(1/2+1+1/3+1)× 0,37+(3+3+1+1/2)×0,16+(2+1+2+1)×0,17 = 4,41 | ||||||||
ИС(по форм.(4)) | (4,41 — 4)/ (4 – 1) = 0,14 | ||||||||
ОС(по форм.(5)) | 0,14/ 0,90 = 0,15 |
Сравниваются значимости результатов, полученных затратным (З), сравнительным (С) и доходным (Д) подходами к оценке, по каждому критерию согласования:
Таблица 6 - А. возможность отразить действительные намерения продавца:
З | С | Д | Средние геометрические | Нормализованный вектор приоритетов (НВП) – Значимость подхода (расчет по формуле (2)) | |||||
З | 1 | 1/2 | 1/3 | (1× 1/2× 1/3) 1/3 = | 0,55 | 0,55/3,37 = 0,16 | |||
С | 2 | 1 | 1/2 | (2 × 1 × 1/2) 1/2 = | 1,00 | 1,00/3,37 = 0,30 | |||
Д | 3 | 2 | 1 | (3 × 2 × 1) 1/3 = | 1,82 | 1,82/3,37 = 0,54 | |||
Сумма | (по формуле (1)) 3,37 | 1,00 | |||||||
λmaxА(по форм.(3)) | (1+2+3)×0,16+(1/2+1+2)×0,3+(1/3+1/2+1)×0,54=2,998 | ||||||||
ИСА(по форм.(4)) | (3-3)/ (3-1)=0 | ||||||||
ОСА(по форм.(5)) | 0/ 0,58 = 0,01 |
Таблица 7 - Б. тип, качество, обширность данных, на основе которых проводится анализ:
З | С | Д | Средние геометрические | Нормализованный вектор приоритетов (НВП) – Значимость подхода (расчет по формуле (2)) | ||||
З | 1 | 3 | 5 | (1×3×5) 1/3 = | 2,47 | 0,46/3,41 = 0,64 | ||
С | 1/3 | 1 | 3 | (1/3 × 1 × 3) 1/3 = | 1,00 | 1,59/3,41 = 0,26 | ||
Д | 1/5 | 1/3 | 1 | (1/5 × 1/3 × 1) 1/3 = | 0,41 | 1,36/3,41 = 0,10 | ||
Сумма | (по формуле (1)) | 3,87 | 1,00 | |||||
λmaxБ(по форм.(3)) | (1+3+5)×0,64+(0,33+1+3)×0,26+(0,2+0,33+1)×0,1=3,04 | |||||||
ИСБ(по форм.(4)) | (3,04-3)/ (3-1)=0,02 | |||||||
ОСБ(по форм.(5)) | 0/ 0,58 = 0,03 |
Таблица 8 - В. способность параметров используемых подходов учитывать конъюнктурные колебания:
З | С | Д | Средние геометрические | Нормализованный вектор приоритетов (НВП) – Значимость подхода (расчет по формуле (2)) | |||||
З | 1 | 1/2 | 1/2 | (1× 1/2 × 1/2) 1/3 = | 0,63 | 0,63/3,22 = 0,20 | |||
С | 2 | 1 | 1/2 | (2 × 1 × 1/2) 1/3 = | 1,00 | 1/3,22 = 0,31 | |||
Д | 2 | 2 | 1 | (2 × 2 × 1) 1/3 = | 1,59 | 1,59/3,22 = 0,49 | |||
Сумма | (по формуле (1)) | 3,22 | 1,00 | ||||||
λmaxВ(по форм.(3)) | 3,05 | ||||||||
ИСВ(по форм.(4)) | 0,03 | ||||||||
ОСВ(по форм.(5)) | 0,05 |
Таблица 9 - Г. способность учитывать специфические особенности объекта, влияющие на его стоимость (местонахождение, размер, потенциальная доходность):
З | С | Д | Средние геометрические | Нормализованный вектор приоритетов (НВП) – Значимость подхода (расчет по формуле (2)) | |||||
З | 1 | 2 | 3 | (1× 2 × 3) 1/3 = | 1,82 | 1,82/3,32 = 0,55 | |||
С | ½ | 1 | ½ | (1/2 × 1 × 1/2) 1/3 = | 0,63 | 0,63/3,32 = 0,19 | |||
Д | 1/3 | 2 | 1 | (1/3 × 2 × 1) 1/3 = | 0,87 | 0,87/3,32 = 0,26 | |||
Сумма | (по формуле (1)) | 3,32 | 1,00 | ||||||
λmaxГ(по форм.(3)) | 3,14 | ||||||||
ИСГ(по форм.(4)) | 0,07 | ||||||||
ОСГ(по форм.(5)) | 0,12 |
Таблица 10 - Расчет итоговых значений коэффициентов значимости каждого подхода к оценке
А | Б | В | Г | Итоговая оценка коэффициентов значимости и общий приоритет для каждого подхода (по формуле (6)) | ||||
0,31 (НВПА из табл.5) | 0,37(НВПБ из табл.5) | 0,16 (НВПВ из табл.5) | 0,17 (НВПГ из табл.5) | расчет | значение | |||
З | 0,16 | 0,64 | 0,20 | 0,55 | 0,31×0,16+0,37×0,64+0,16×0,20+0,17×0,55 = | 0,40 | ||
С | 0,30 | 0,26 | 0,31 | 0,19 | 0,31×0,30+0,37×0,26+0,16×0,31+0,17×0,19 = | 0,27 | ||
Д | 0,54 | 0,10 | 0,49 | 0,26 | 0,31×0,54+0,37×0,10+0,16×0,49+0,17×0,26 = | 0,33 | ||
ИС | 0(ИСА из табл.6) | 0,02(ИСБ из табл.7) | 0,03(ИСВ из табл.8) | 0,07(ИСГ из табл.9) | сумма | 1,00 | ||
ОИС (по формуле (7)) | 0,31×0 + 0,37×0,02 + 0,16×0,03 + 0,17×0,07 = 0,024 | |||||||
ООС (по формуле (8)) | 0,024/ 0,58 = 0,04 |
Ответ: коэффициент значимости (удельный вес) стоимости по затратному подходу равен 0,40, по сравнительному — 0,27, по доходному — 0,33.
Это 4-я статья цикла по разработке, управляемой моделями. В предыдущих статьях мы познакомились с OCL и метамоделями, Eclipse Modeling Framework и Sirius. Сегодня научимся описывать метамодели в текстовой нотации (а не в виде диаграмм как раньше) и познакомимся с табличным представлением моделей в Sirius. Сделаем это на примере кризиса среднего возраста и метода анализа иерархий. Возможно, это пригодится вам при разработке ИИ в играх, при принятии решений или в работе.
Введение
Вообще, я планировал статью про разработку DSL и преобразование моделей. Но мои планы внезапно нарушили мысли о смысле жизни, о том, тем ли я вообще занимаюсь.
Самое очевидное, что может при этом сделать специалист по разработке, управляемой моделями, это
- Выбрать метод, который позволит получить интересующие ответы (раздел 1)
- Создать метамодель под этот метод (раздел 2)
- Создать инструмент разработки моделей в соответствии с метамоделью (раздел 3)
- Создать модель (раздел 4)
- …
- Profit
Если вам интересен метод анализа иерархий, но вы не хотите разбираться в метамоделях и т.п., то тут доступен Excel-калькулятор приоритетов.
1 Метод анализа иерархий
Меня интересовали следующие вопросы:
- Чем мне интересно заниматься?
- Достаточно ли времени я уделяю интересным вещам?
- Что можно изменить в жизни к лучшему?
- Не станет ли от этих изменений хуже?
- …
- Вы определяете
- цель,
- критерии достижения цели и
- возможные альтернативы.
- Оцениваете значимость критериев.
- Оцениваете альтернативы по каждому из критериев.
- Рассчитываете приоритеты альтернатив.
- Принимаете решение.
1.1 Построение иерархии
Итак, в простейшем случае иерархия должна содержать цель, критерии и альтернативы.
Если суммировать все мои вопросы, то, по большому счету, меня интересует стоит ли мне сменить работу. Поэтому цель: выбрать работу.
При выборе работы меня интересует
- сколько денег я буду зарабатывать,
- на сколько интересно мне будет этим заниматься,
- будет ли у меня время на жизнь,
- карьерные перспективы,
- смогу ли я бывать на природе или буду видеть солнце и деревья раз в год,
- на сколько близка мне культура коллег, соседей и остальных людей.
- ничего не менять,
- переехать в Москву,
- переехать за границу,
- заняться фрилансом или каким-нибудь предпринимательством.
1.2 Оценка критериев
У разных людей при принятии решений могут быть примерно одинаковые критерии. Однако, их значимость может сильно различаться. Кто-то работает в большей степени ради денег, кто-то ради интереса, кому-то просто нравится общаться с коллегами и т.д.
В соответствии со своими приоритетами один человек не раздумывая выберет более денежную работу, а другой – более интересную. Не существует работы, которая по всем критериям подходит абсолютно всем.
Наверное, при принятии решений большинство людей в явной или неявной форме ранжируют критерии от самого значимого до самого незначительного. Последние отбрасывают, а по первым сравнивают возможные альтернативы. На каждую возможную работу они навешивают ярлычок: вот, эта работа более денежная, но не интересная, а эта интересная и коллектив там хороший, но сомнительные карьерные перспективы и т.д.
Если сходу не получается сделать выбор, то человек начинает переоценивать критерии: может быть интерес пока не так важен и в пробке можно лишние два часа постоять, зато там больше зарплата, вот, выплачу ипотеку и займусь чем-то интересным.
Подобные рассуждения могут продолжаться долго, мучительно и без гарантии, что в итоге действительно будет принято оптимальное решение.
В методе анализа иерархий предлагается формальный алгоритм принятия подобных решений: все критерии попарно сравниваются друг с другом по шкале от 1 до 9.
Например, что для меня важнее: интерес или деньги? Интерес важнее, но не сказать, что очень сильно. Если максимальная оценка 9 к 1, то для себя я оцениваю приоритеты как 5 к 1.
Или, например, что важнее: деньги или наличие времени для жизни, хобби? Готов ли я ради дополнительных денег работать в выходные или стоять по два часа в пробках? Я для себя оцениваю значимость этих критериев как 1 к 7.
В итоге заполняется подобная таблица:
Очевидно, что по диагонали всегда будут единицы. Также очевидно, что все оценки будут обратно-симметричны относительно главной диагонали. Например, если я оцениваю значимость «интерес-деньги» как 5 к 1, то значимость «деньги-интерес» будет 1 к 5. Иногда такие матрицы называют обратно-симметричными.
В общем случае, если мы сравниваем N критериев, то необходимо сделать (N*(N-1))/2 сравнений. Казалось бы, всё только усложнилось. Если изначально было 6 критериев, то сейчас целая матрица каких-то чисел. Чтобы снова вернуться к критериям, рассчитаем собственный вектор матрицы. Элементы этого вектора и будут относительной значимостью каждого критерия.
В книге Томаса Саати предлагается несколько упрощенных методов расчета собственного вектора в уме или на бумаге. Мы воспользуемся более точным итеративным алгоритмом:
В итоге получаем следующий вектор:
Наиболее значимый критерий – время (0,3846), наименее значимый – карьера (0,0555).
При парных сравнениях некоторые оценки могут получиться несогласованными. Например, для меня интерес важнее денег, а деньги важнее карьеры. Очевидно, что интерес должен быть существенно важнее карьеры. В данной таблице так и есть. Но если бы оценка для «интерес-карьера» была меньшей или вообще обратной, то мои оценки были бы не согласованы между собой.
Оценить меру этой несогласованности поможет собственное значение матрицы сравнений. Оно равно 6,7048.
Очевидно, что собственное значение пропорционально количеству критериев. Чтобы оценка согласованности не зависела от количества критериев, рассчитывается так называемый индекс согласованности = (собственное значение — N) / (N — 1).
Наконец, чтобы оценка была совсем объективной необходимо разделить данный индекс на усредненный индекс согласованности для случайных матриц. Если полученная величина (отношение согласованности) меньше 0,1000, то парные сравнения можно считать более-менее согласованными. В нашем примере оно равно 0,1137, это значит, что рассчитанным приоритетам можно более-менее доверять.
1.3 Оценка альтернатив
Теперь необходимо сравнить все альтернативы по каждому из критериев.
Например, при переезде в Москву я существенно выиграю в зарплате. Но работа, скорее всего, будет менее интересная, а также будет оставаться меньше времени для жизни. Или при переезде за границу мне придется отказаться от своего языка, подстраиваться под чужие культурные ценности.
По каждому критерию рассчитывается собственный вектор и отношение согласованности.
Полученные собственные векторы записаны в столбцах:
Отношения согласованности по каждому критерию записаны в следующем векторе:
Большинство значений меньше или незначительно превышают 0,1000. Однако для критерия «культура» отношение согласованности получилось очень большое. Это связано с тем, что я неправильно расставил часть оценок. Хотел поставить 7 для «ничего не менять – переехать за границу», потому что жить в родном городе гораздо комфортнее. Но по ошибке поставил 1/7.
1.4 Определение приоритетов альтернатив
Итак, мы оценили критерии, навесили на каждую альтернативу ярлычок: какой вариант более денежный, какой более интересный и т.д. Теперь необходимо оценить альтернативы по всем критериям в сумме. Для этого достаточно умножить матрицу
В итоге мы получим следующий вектор:
Это и есть значимости альтернатив относительно достижения цели.
1.5 Принятие решения
Теперь изобразим все рассчитанные значения на следующем рисунке:
В скобках указано отношение согласованности оценок.
Толщина линий пропорциональна приоритетам. Наиболее интересна и перспективна в плане карьеры текущая работа. Фриланс позволил бы больше бывать на природе и больше времени тратить на жизнь. Более денежная работа в Москве и заграницей.
Видно, что Москва совсем отпадает. Заграница чуть лучше, но тоже не очень. Ничего не менять и фриланс примерно на одном уровне.
2 Создание метамодели
Теперь опишем как всё это рисуется и считается.
Сначала необходимо описать метамодель: виды сущностей, которые используются в методе анализа иерархий. Причем, в отличие от предыдущей статьи мы не будем рисовать метамодель в виде диаграммы, а опишем её в текстовой нотации Xcore.
Как и раньше понадобится Eclipse Modeling Tools. Установите Xcore и Sirius.
Вы можете взять либо готовый проект, либо сделать всё самостоятельно. Если самостоятельно, то создайте Xcore-проект. В папке model создайте файл ahp.xcore со следующим содержимым:
Смысл должен быть интуитивно понятен. Мы описали иерархию, которая содержит одну цель, хотя бы один критерий, две или более альтернативы. У всех трёх сущностей есть имя.
После сохранения файла автоматически сформируется Java API для работы с иерархиями в папке src-gen. А также будут созданы 3 дополнительных проекта. Нечто подобное мы уже делали в статье про EMF. Только там было две модели (ecore и genmodel), и генерацию кода мы запускали вручную. Xcore делает это автоматически.
Думаю, что описывать всю метамодель в статье нет смысла, вы можете посмотреть её самостоятельно.
Остановимся только на самых интересных вещах. Xcore в отличие от Ecore позволяет описывать не только структуру модели, но и некоторую логику на Java-подобном языке. Опишем, например, тип данных для хранения оценок. Положительные оценки будем хранить в виде положительных целых чисел. А обратные оценки вида 1/n будем хранить как -n. Мы могли бы хранить оценки в виде строк или в виде действительных чисел, но, наверное, это плохая идея.
При этом нам нужны две функции для преобразования оценок из или в строковое представление. На Xcore это будет выглядеть так:
Xcore позволяет описывать также и относительно сложную логику.
Наконец, для Xcore-модели (как и для Ecore-модели) вы можете создать диаграмму классов.
Так выглядит метамодель для метода анализа иерархий. Это максимально упрощенный вариант. А в общем случае, иерархия может содержать более трех уровней (например, у критериев могут быть подкритерии). Матрицы связей между уровнями могут быть разреженными. Оценки могут ставить несколько экспертов, а не один.
3 Разработка инструмента для работы с моделями
Метамодель готова, теперь нужен редактор иерархий и матриц. Наверное, нет смысла подробно описывать как всё это сделано. Если вам это интересно, то можете прочитать предыдущую статью про Sirius и посмотреть готовый проект.
Так выглядит спецификация редактора диаграмм и таблиц:
Так выглядит результирующий редактор:
Совсем декларативно описать редактор иерархий не получилось, пришлось писать расширения на Java. Думаю, стоит остановиться на этом немного подробней. В Sirius есть по крайней мере два варианта расширений: службы (service) и действия (action).
С помощью служб вы можете добавить классам из метамодели некоторые дополнительные операции. Например, следующие две операции соответственно форматируют приоритет и рассчитывают толщину связей между критериями и альтернативами.
Удобно то, что эти операции вы можете использовать прямо в AQL-выражениях. Однако, вы не можете с их помощью изменять модель.
Для изменения модели нужно использовать Java-действия. Действия в отличие от служб уже не могут вызываться в AQL-выражениях. Их можно запускать, например, через контекстное меню или по нажатию кнопки. Действия можно откатывать с помощью команды Undo.
4 Создание модели
Ну, собственно, свою модель я уже создал и показал выше. Попробуйте взять этот проект и построить свою иерархию.
Читайте также: