Лямбда максимальная формула метод анализа иерархий

Обновлено: 07.07.2024

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

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

Иными словами, если обозначить индекс согласованности, рассчитанный для элемента h k j (где k = 1, …, N – 1; j = 1, …, p k ), через

CI k j , а вектор таких индексов для элементов k -го уровня – через CI k , то глобальный индекс согласованности С определяется по формуле:

C = CI 0 + ∑ W 0, k CI k .

Аналогичным образом рассчитывается среднее значение глобального индекса согласованности как случайной величины:

CS = CIS 0 + ∑ W 0, k CIS k ,

и далее определяется глобальное отношение согласованности R :

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

Метод анализа иерархий (теория)

8. Пример применения метода анализа иерархий для построения модели выбора альтернатив

Вернемся к примеру на стр. 5 и рассмотрим все основные этапы решения данной задачи методом анализа иерархий. С этой целью предварительно уточним постановку задачи.

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

1) импорт соответствующей продукции (т.е. фактический отказ от развития отрасли в своей стране);

2) создание только сборочного производства;

3) развитие в своей стране полного цикла производства. Качество продукции при всех вариантах решения будет пример-

При принятии решения учитывается мнение следующих сторон:

• представители отрасли машиностроения: заинтересованы только в получении прибыли;

• представители отраслей-потребителей: заинтересованы прежде всего в получении продукции машиностроения по достаточно низким ценам и в меньшей степени – в получении этой продукции в кратчайшие сроки;

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

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

Возможные сценарии развития отрасли имеют следующие характеристики.

• При ориентации на импорт машиностроительная отрасль практически не будет иметь прибыли. В случае создания сборочного производства прибыль будет составлять примерно 15 млн. денежных единиц (д.е.) в год, при развитии же полного цикла производства – около 30 млн.

• Цена на продукцию будет минимальной при создании сборочного производства. При импорте продукции она будет

Метод анализа иерархий (теория)

совсем немного выше, при развитии полного цикла – существенно выше.

• Сроки появления продукции на рынке при импорте составят 5-6 месяцев, при создании сборочного производства – 3-4 года, при полном цикле производства – 5-6 лет.

• Налоговые поступления от импорта продукции составят примерно 2 млн. д.е. в год, от предприятий со сборочным производством – примерно 8 млн., от предприятий полного цикла – 9 млн.

• В случае ориентации на импорт продукции новые рабочие места создаваться не будут. Развитие сборочного производства позволит создать примерно 6000 новых рабочих мест, развитие полного цикла – примерно 7000.

Перейдем к описанию процесса построения модели выбора.

Шаг 1. Анализ задачи и построение иерархии

Иерархическое представление задачи показано на стр. 6 (рис. 2).

Шаг 2. Вычисление локальных приоритетов и оценка согласованности суждений.

Используя метод парных сравнений, определим следующие показатели:

• приоритеты элементов S j относительно главной цели (оценки влияния заинтересованных сторон на выбор сценария);

• приоритеты критериев C k относительно элементов S j (степени важности критериев для каждой из заинтересованных сторон);

• приоритеты альтернатив X i (сценариев развития) относитель-

но критериев C k .

С этой целью построим необходимые матрицы парных сравнений и для каждой матрицы рассчитаем нормализованный вектор приоритетов ( W ), максимальное собственное число ( λ max ) и отношение согласованности ( CR ).

Матрица парных сравнений и полученные на ее основе оценки приоритетов элементов S j относительно главной цели приведены в табл. 3. Здесь и далее в заголовке таблицы приводится вопрос, который целесообразно задавать ЛПР или эксперту при сравнении каждой пары элементов.

Application of the hierarchy analysis method in multi-criteria and multi-level selection problems (On the example of cars "B" class)

20.07.17 12:40
5218

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

Keyword: tree of consumer properties, cost, the price, consumer characteristics, hierarchy analysis method, the choice of options, the choice of alternatives, quantitative and qualitative factors, criteria, method of paired comparisons, the definition of priorities and weights, the formation of scale, consistency index, the ratio of consistency, random index

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

Annotation: The beginning of this article "Multi-criteria and multilevel tasks of choice (based on LCV segment cars)" was published in Innov: electronic scientific journal, 2017. №2 (31).

Variants of structuring of problems of consumer choice on the basis of construction of a hierarchy of quantitative and qualitative factors are considered in the article. The process of choosing and making effective decisions in multicriteria, multilevel and multifactorial problems is considered. The selection process is based on expert assessments.

Methods: expert assessments, decision trees, groupings, convolution indicators, scores, weights, correlation, functional-value analysis, hierarchy analysis, paired comparisons.

In the article the authors reviewed two examples: Example 1 - selection of a car from the LCV (Light Commercial Vehicle) segment based on the linear convolution of the expert evaluation results; Example 2 - the choice of a car "B" class by the method of analysis of hierarchies (MAH).

The first version of the formulation and solution of the problem assumes that the opinions of experts were initially agreed upon. It allows you to adapt the task to more diverse purposes. The second variant of decision-making on the basis of the MAH assumes the possibility of identifying the degree of agreement between the experts' opinions, but it requires more complex calculations, especially when the number of comparison levels and the number of qualitative and quantitative factors increase. The main advantage of the discussed variants (processes) of the decision of problems is a clear understanding of the structure of the analyzed problem by building a "tree of decisions".

Достаточно часто мы сталкиваемся с проблемой принятия эффективного управленческого решения на основе множества критериев и при наличии множества количественных и качественных факторов, которые требуется при этом учитывать. Сравнение различных вариантов и альтернатив сложно осуществлять, когда задача не структурирована, а критерии выбора не определены. Для структурирования проблемы выбора эффективного решения определяют цели, соответствующие им критерии принятия решения, множество значимых количественных и качественных факторов, а также выявляются все возможные альтернативы [24, 26, 27]. В результате осуществляется построение дерева решения проблемы, определяются методы решения. При этом важным моментом является построение иерархии сравниваемых факторов с учетом их значимости и уровней группировки [1, 2]. Задача становится многокритериальной, многофакторной, многоуровневой и может предполагать множество вариантов решений на основе разных методов. Поэтому итоговый вариант решения зависит от принятых допущений, а выбор эффективного решения предполагает возможность четко структурировать анализируемую задачу [3, 4].

Материалы и методы

В данном исследовании рассмотрено два примера структурирования задачи потребительского выбора на основе построения иерархии количественных и качественных факторов. В первом случае рассмотрена задача выбора автомобиля из сегмента LCV на основе линейной свертки результатов экспертных оценок (начало статьи - Иннов: электронный научный журнал, 2017. №2 (31)) [25], а во втором - выбор легкового автомобиля В класса методом анализа иерархий (МАИ) (окончание статьи - Иннов: электронный научный журнал, 2017. №3 (32)).

О корректности, достоинствах и недостатках МАИ достаточно подробно написано в публикациях [10, 15]:

Пример 2. Выбор легкового автомобиля В класса методом анализа иерархий (МАИ).

Цель - выбор экономного легкового автомобиля В класса для междугородних поездок.

Альтернативы. Для сравнения были выбраны 5 автомобилей В класса с учетом их популярности на российском рынке: Hyundai Solaris 1.6 MPI (RB(2014)), Kia Rio III поколение, Chevrolet Cruze 1.6 MT, Renault Logan (II) 2013 , Лада Веста I поколение.

Количественные и качественные факторы – цена, расход топлива, скорость, мощность двигателя, дорожный просвет и т.д. В данной задаче будут рассмотрены 10 количественных и качественных факторов (см. табл. 5-8).

Критерии оценки – максимальное значение альтернативы при расчете глобального приоритета.

В общем случае процесс выбора альтернативы на основе МАИ, можно представить так [7 ,8]:

1. Построение дерева решения проблемы (рис. 1).


2. Применение метода парных сравнений для определения приоритетов всех факторов в иерархической структуре на основе шкалы отношений, предложенной Т.Саати (табл. 1).

Таблица 1. Шкала отношений Т.Саати в методе парных сравнений [1]


3. Применение линейной свертки приоритетов элементов иерархии и получение глобальных приоритетов альтернатив.

4. Результаты проверяются на согласованность на основе расчета индексов согласованности (ИС) и сравнения их со значением случайного индекса (СИ) (табл. 2).

Таблица 2. Оценка случайного индекса (СИ)



Расчет отношения согласованности по формуле:

Полученные отношения согласованности (ОС) не должны превышать 0,1.

5. Принятие решений на основе значений приоритетов альтернатив [1].

Результаты и обсуждения

Этап 1. Определим факторы (критерии) сравнения автомобилей.

Основные группы количественных и качественных критериев представлены в таблице (см. табл. 3)

Таблица 3. Группы факторов (критериев) для сравнения автомобилей

трансмиссия

динамические характеристики

расход топлива*

Разгон 0-100 км/ч, c

Объём топливного бака, л

Максимальная скорость, км/ч

Габариты (длина/ширина/высота), мм

Путь при торможении со 100 до 0 км/ч, м

Рабочий объем, см3

Колесная база, мм

Колея (передняя, задняя), мм

Максимальная мощность, л. с. (об./мин.)

Дорожный просвет, мм

Максимальный крутящий
момент, Н • м (об./мин.)

Объём багажника, л (VDA)

Требования к топливу

Снаряженная масса (мин/макс), кг

Математический инструмент МАИ позволяет решать многокритериальные задачи выбора с учетом количественных и качественных факторов, но при этом достаточно трудоёмкий [12, 14]. Трудоемкость расчетов значительно возрастает при увеличении количества факторов и уровней их детализации. Поэтому из всего множества количественных и качественных факторов выберем 10 наиболее значимых для заданной цели (см. табл. 4).

Таблица 4. Ключевые количественные и качественные факторы для сравнения автомобилей

Количественные факторы:

Расход топлива, (л)

Мощность двигателя, (л. с.)

Разгон до 100 км/ч

Снаряженная масса, (т)

Дорожный просвет, (мм)

Качественные факторы (наличие или отсутствие в комплектации):

Этап 3. Определим значения ключевых количественных и качественных факторов сравниваемых автомобилей

Ниже в табл. представлены качественные и количественные критерии для сравнения 5-ти самых популярных автомобилей В класса в РФ в минимальной комплектации (табл. 5,6) и в комплектации комфорт (табл. 7,8). Цены указаны по данным на конец 2016 года.

Таблица 5. Количественные факторы (критерии) для сравнения моделей автомобилей В класса (минимальная комплектация)

Расход топлива, (л)

Мощность двигателя, (л.с.)

Разгон до 100 км/ч

Снаряженная масса, (т)

Дорожный просвет, (мм)

Таблица 6. Качественные факторы (критерии) для сравнения моделей автомобилей В класса (минимальная комплектация)

Таблица 7. Количественные факторы (критерии) для сравнения моделей автомобилей В класса (комплектация comfort)

Расход топлива, (л)

Мощность двигателя, (л.с.)

Разгон до 100 км/ч

Снаряженная масса, (т)

Дорожный просвет, (мм)

Таблица 8. Качественные факторы (критерии) для сравнения моделей автомобилей В класса (комплектация comfort)

Если для сравнения взять автомобили в минимальной комплектации (табл. 5, 6), то необходимо будет их сравнивать по всем 10 факторам (критериям). Если для сравнения взять автомобили в комплектации comfort, то из табл. 7,8 видно, что все качественные факторы (критерии) у анализируемых автомобилей совпадают.

Поэтому упростим задачу и далее будем сравнивать автомобили в комплектации comfort только по 6 количественным факторам (табл. 7), т.к. качественные факторы у выбранных моделей совпадают (табл. 8).

Этап 4. Применим метод парных сравнений для определения приоритетов всех элементов иерархии

Определим приоритеты критериев 1-го уровня для оценки автомобилей: Цена (Ц), Расход топлива (РТ), Мощность двигателя (МД), Разгон до 100 км/ч (Р), Снаряженная масса (СМ), Дорожный просвет (ДП).

Таблица 9.1-й уровень: Цена (Ц), Расход топлива (РТ), Мощность двигателя (МД), Крутящий момент (КМ), Снаряженная масса (СМ), Дорожный просвет (ДП).

Приоритеты критериев 1-го уровня:

цена>расход топлива>мощность двигателя>разгон>

снаряженная масса >дорожный просвет

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

Определим приоритеты для каждого из подкритериев 2-го уровня: Цена (Ц), Расход топлива (РТ), Мощность двигателя (МД), Разгон до 100 км/ч (Р), Снаряженная масса (СМ), Дорожный просвет (ДП).
Таблица 10. 2-й уровень – Цена (Ц)

Приоритеты критериев 2-го уровня – Цена (Ц):

Таблица 11. 2-й уровень – Расход топлива (РТ)

Приоритеты критериев 2-го уровня – Расход топлива (РТ):

Таблица 12. 2-й уровень – Мощность двигателя (МД)

Приоритеты критериев 2-го уровня – Мощность двигателя (МД):

Таблица 13. 2-й уровень – Разгон до 100 км/ч (Р)

Приоритеты критериев 2-го уровня – Разгон до 100 км/ч (Р):

Таблица 14. 2-й уровень – Снаряженная масса (СМ)

Приоритеты критериев 2-го уровня – Снаряженная масса (СМ):

Таблица 15. 2-й уровень – Дорожный просвет (ДП)

Приоритеты критериев 2-го уровня – Дорожный просвет (ДП):

Для принятия окончательного решение по выбору автомобиля на основе МАИ, необходимо значения векторов приоритета из таблиц 9-15 по каждому фактору (критерию) перенести в итоговую таблицу 16 и рассчитать итоговый глобальный приоритет.

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

По данным таблиц 9-15 определяется Глобальный приоритет (ГП) по каждому автомобилю. Например, ГП по автомобилю solaris будет равен:

0,43х0,26 + 0,27х0,26 + 0,14х0,35 + 0,08х0,38 + 0,05х0,1 + 0,03х0,2 = 0,28

Таблица 16. Расчет глобального приоритета

Векторы глобальных приоритетов по критериям

Разгон до 100 км/ч

Итоговые результаты сравнения вариантов по всем критериям:

solaris > vesta > cruze> rio > logan

Сравнивая полученные значения, определяют рейтинг автомобилей с учетом вариантов попарных сравнений представленных в табл. 9-15. Высокий рейтинг будет
соответствовать наибольшему значению глобального вектора приоритета.


Это 4-я статья цикла по разработке, управляемой моделями. В предыдущих статьях мы познакомились с OCL и метамоделями, Eclipse Modeling Framework и Sirius. Сегодня научимся описывать метамодели в текстовой нотации (а не в виде диаграмм как раньше) и познакомимся с табличным представлением моделей в Sirius. Сделаем это на примере кризиса среднего возраста и метода анализа иерархий. Возможно, это пригодится вам при разработке ИИ в играх, при принятии решений или в работе.

Введение

Вообще, я планировал статью про разработку DSL и преобразование моделей. Но мои планы внезапно нарушили мысли о смысле жизни, о том, тем ли я вообще занимаюсь.

Самое очевидное, что может при этом сделать специалист по разработке, управляемой моделями, это

  • Выбрать метод, который позволит получить интересующие ответы (раздел 1)
  • Создать метамодель под этот метод (раздел 2)
  • Создать инструмент разработки моделей в соответствии с метамоделью (раздел 3)
  • Создать модель (раздел 4)
  • Profit

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


1 Метод анализа иерархий

Меня интересовали следующие вопросы:

  • Чем мне интересно заниматься?
  • Достаточно ли времени я уделяю интересным вещам?
  • Что можно изменить в жизни к лучшему?
  • Не станет ли от этих изменений хуже?
  1. Вы определяете
    • цель,
    • критерии достижения цели и
    • возможные альтернативы.
  2. Оцениваете значимость критериев.
  3. Оцениваете альтернативы по каждому из критериев.
  4. Рассчитываете приоритеты альтернатив.
  5. Принимаете решение.
1.1 Построение иерархии

Итак, в простейшем случае иерархия должна содержать цель, критерии и альтернативы.

Если суммировать все мои вопросы, то, по большому счету, меня интересует стоит ли мне сменить работу. Поэтому цель: выбрать работу.

При выборе работы меня интересует

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


1.2 Оценка критериев

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

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

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

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

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

В методе анализа иерархий предлагается формальный алгоритм принятия подобных решений: все критерии попарно сравниваются друг с другом по шкале от 1 до 9.

Например, что для меня важнее: интерес или деньги? Интерес важнее, но не сказать, что очень сильно. Если максимальная оценка 9 к 1, то для себя я оцениваю приоритеты как 5 к 1.

Или, например, что важнее: деньги или наличие времени для жизни, хобби? Готов ли я ради дополнительных денег работать в выходные или стоять по два часа в пробках? Я для себя оцениваю значимость этих критериев как 1 к 7.

В итоге заполняется подобная таблица:


В общем случае, если мы сравниваем N критериев, то необходимо сделать (N*(N-1))/2 сравнений. Казалось бы, всё только усложнилось. Если изначально было 6 критериев, то сейчас целая матрица каких-то чисел. Чтобы снова вернуться к критериям, рассчитаем собственный вектор матрицы. Элементы этого вектора и будут относительной значимостью каждого критерия.

В книге Томаса Саати предлагается несколько упрощенных методов расчета собственного вектора в уме или на бумаге. Мы воспользуемся более точным итеративным алгоритмом:


В итоге получаем следующий вектор:

Наиболее значимый критерий – время (0,3846), наименее значимый – карьера (0,0555).

Оценить меру этой несогласованности поможет собственное значение матрицы сравнений. Оно равно 6,7048.

Очевидно, что собственное значение пропорционально количеству критериев. Чтобы оценка согласованности не зависела от количества критериев, рассчитывается так называемый индекс согласованности = (собственное значение — N) / (N — 1).

Наконец, чтобы оценка была совсем объективной необходимо разделить данный индекс на усредненный индекс согласованности для случайных матриц. Если полученная величина (отношение согласованности) меньше 0,1000, то парные сравнения можно считать более-менее согласованными. В нашем примере оно равно 0,1137, это значит, что рассчитанным приоритетам можно более-менее доверять.

1.3 Оценка альтернатив

Теперь необходимо сравнить все альтернативы по каждому из критериев.


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

По каждому критерию рассчитывается собственный вектор и отношение согласованности.

Полученные собственные векторы записаны в столбцах:


Отношения согласованности по каждому критерию записаны в следующем векторе:

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 Создание модели

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

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

Метод позволяет найти оптимальный выбор из нескольких вариантов с учетом нескольких противоречивых критериев различной физической природы.

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

Читайте также: