Общая характеристика метода анализа иерархий
Метод Анализа Иерархий (МАИ) – математический инструмент системного подхода к решению проблем принятия решений. МАИ не предписывает лицу, принимающему решение (ЛПР), какого-либо «правильного» решения, а позволяет ему в интерактивном режиме найти такой вариант (альтернативу), который наилучшим образом согласуется с его пониманием сути проблемы и требованиями к ее решению. Этот метод разработан американским ученым Томасом Л. Саати в 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)
Кj | В1 | В2 | …. | Вk | Средние геометрические | НВП(по фор-муле (2)) |
В1 | ||||||
В2 | ||||||
…. | ||||||
Вk | ||||||
ИТОГО | по формуле (1) | |||||
λmaxj | по форм. (3) | |||||
ИСj | по форм. (4) | |||||
ОСj | по форм. (5) |
Таблица 4 - Форма таблицы расчета итоговых значений приоритетов
К1 | К2 | …. | Кn | Итоговые значения приоритетов (расчет по формуле (6)) | |
приводятся значения 1-го компонента НВП из таблицы 2 | приводятся значения 2-го компонент НВП из таблицы 2 | приводятся значения n-го компонента НВП из таблицы 2 | |||
В1 | К(В1)= | ||||
В2 | К(В2)= | ||||
…. | … | ||||
Вk | К(В3)= | ||||
ИС | приводится зна-чение ИС1 по К1 | приводится зна-чение ИС2 по К2 | … | приводится зна-чение ИСn по Кn | приводится сумма по столбцу |
ОИС | расч. по форм. (7) | ||||
ООС | расч. по форм. (8) |
Основные понятия метода анализа иерархий
В соответствии с формулировкой задачи принятия решения структура модели принятия решения в методе анализа иерархий представляет собой схему (граф), которая включает:
- набор альтернативных решений,
- главный критерий рейтингования решений,
- набор групп однотипных факторов, влияющих на рейтинг,
- множество направленных связей, указывающих на влияния решений, критерия и факторов друг на друга.
Структура модели отражает результат анализа ситуации принятия решения. Основные группы понятий метода анализа иерархий:
- Первая группа понятий связана с описанием возможных структур моделей принятия решения. Для вычисления приоритетов альтернативных решений к структуре необходимо добавить информацию о силе влияний решений, критерия и факторов друг на друга.
- Вторая группа понятий связана с описанием данных для моделей принятия решения. После того как сформирована структура и собраны все данные, модель принятия решения готова, т.е. в ней могут быть получены рейтинги приоритетов решений и факторов. Знание приоритетов используется для поддержки принятия решения.
- Третья группа понятий связана с описанием результатов, получаемых в моделях принятия решения. Четвертая группа понятий связана с пояснением того, как организованы вычисления. Знание этих понятий необходимо лишь для понимания математических обоснований метода. Для применения метода знание этих понятий необязательно.
1. Cтруктуры
1.1) Узел – общее название для всех возможных решений (альтернатив), главного критерия (главной цели) рейтингования решений, всех факторов, от которых, так или иначе, зависит рейтинг. Название узла совпадает с названием соответствующего решения, критерия или фактора. Заметим, что с математической точки зрения схема ситуации принятия решения (структура модели), которая строится в методе анализа иерархий, является графом. Таким образом, понятие «узел» вполне оправдано. Ясно также, что решения, критерий и факторы являются «узлами» проблемы принятия решения.
1.2) Уровень – группа всех однотипных (равноправных, однородных, гомогенных и т.п.) узлов. Название уровня отражает назначения, функцию группы узлов в ситуации принятия решения. Каждый узел определяется не только своим названием, но и названием уровня, которому он принадлежит. Ясно, что отдельный уровень образуют альтернативные решения (узлы этого уровня однотипны в том смысле, что они являются решениями; прочие узлы таковыми не являются). Главный критерий рейтингования, как правило, один – это отдельный уровень. На рейтинг оказывают влияние несколько групп факторов – это также уровни.
1.3) Вершина – узел, соответствующий главному критерию (главной цели) отбора альтернатив.
1.4) Связь – указание на наличие влияния одного узла (доминирующего) на другой (подчиненный). На схеме связь изображается стрелкой. Направление связи (и соответствующей стрелки) совпадает с направлением влияния. С точки зрения теории графов связь – дуга направленного графа. Связь от узла-фактора к узлу-решению означает, что предпочтительность (важность, оптимальность) решения оценивается с точки зрения воздействия данного фактора. Связь от вершины к узлу-фактору означает, что важность учета фактора оценивается с точки зрения главного критерия рейтингования альтернатив. Связь от узла-фактора к узлу-фактору означает, что важность учета второго фактора рассматривается с точки зрения первого фактора.
1.5) Кластер – группа узлов одного уровня, подчиненных некоторому узлу другого уровня –вершине кластера (доминирующему узлу). Кластеры образуются при расстановке связей между узлами, т.е. при расстановке связей происходит формирование кластерной структурыAdvice_KlasterStruct. Важность узлов кластера друг относительно друга оценивается в соответствие с тем, какой узел является вершиной кластера.
Кластер определяется: 1) своей вершиной, 2) названием уровня, 3) списком узлов. 1.6) Система (структура модели, схема ситуации принятия решения) – совокупность всех узлов, сгруппированных по уровням, и всех связей между узлами.
С математической точки зрения системы, которыми приходится оперировать в методе анализа иерархий, являются – направленными графами (сетями). Связи образуют пути, ведущие от одних узлов к другим. Все пути так или иначе являются частями основных путей, ведущих от главного критерия рейтингования через факторы к альтернативам, т.е. основные пути, по сути, являются логическими цепочками, ведущими к выбору одной из альтернатив.
Эта система является иерархической (но не является строгой иерархией). Попутно заметим, что даже для простых задач структуры моделей, строящихся с помощью метода анализа иерархий, представляют собой довольно сложные схемы. Однако это свидетельствует лишь о том, что метод позволяет вскрыть реальную сложность задач, которые человеку приходится решать мысленно. Название системы отражает ее назначение, принадлежность к сфере деятельности, в которой принимается решение.
1.7) Иерархия – система, в которой уровни расположены и пронумерованы так, что: 1) нижний уровень содержит рейтингуемые альтернативы, 2) узлы уровней с большими номерами могут доминировать только над узлами уровней с меньшими номерами. Таким образом, в иерархии связи определяют пути одной направленности — от вершины к альтернативам через промежуточные уровни, которые состоят из узлов-факторов. Система представляет собой строгую иерархию, если допустимы связи только между соседними уровнями от верхнего уровня к нижнему.
1.8) Система с обратными связями. Система имеет обратные связи, если при любом способе нумерации уровней в системе есть узлы, доминирующие и над узлами уровней с большими номерами, и над узлами уровней с меньшими номерами, т .е. система имеет обратные связи, если ни при каких перестановках уровней она не сводится к иерархии. Кроме того, понять различия в структуре иерархии и системы с обратными связями можно, рассматривая пути, образованные связями.
Если в системе нет ни одного такого уровня, что по путям, начинающимся в узлах этого уровня, можно попасть в узлы того же уровня, то система является иерархией, т.е. в иерархии любой путь может пересекаться с каждым уровнем лишь однажды. Если в системе имеются такие уровни, что по пути, начинающемуся в одном из узлов этого уровня, можно попасть в один из узлов того же уровня, то система имеет обратные связи. Т.е. в системе с обратными связями обязательно есть пути, пересекающие некоторые уровни хотя бы дважды. Формирование структуры без обратных связей (иерархии) и формирование структуры с обратными связями производятся по определенным правилам.
2. Данные
2.1) Приоритет узла в кластере – положительное число, служащее для количественного выражения важности (веса, значимости, предпочтительности и т.п.) данного узла в кластере относительно остальных узлов кластера в соответствие с критерием, заключенным в вершине кластера. Сумма всех приоритетов узлов кластера равна единице. Поэтому часто приоритеты можно трактовать как вероятности, доли общего ресурса и т.п. в зависимости от рассматриваемого случая.Часто трудно непосредственно определить набор приоритетов (вектор приоритетов) узлов кластера. Тогда используется процедура парных сравнений и метод собственного вектора
2.2) Пaрные сравнения узлов кластера – оценки (качественные или количественные) отношения приоритета одного узла к приоритету другого, т.е. результаты парных сравнений – это оценки важности (предпочтительности, вероятности и т.п.) каждого узла кластера относительно каждого из других по критерию, заключенному в вершине кластера. Результат парного сравнения – оценка отношения «весов» сравниваемых объектов («веса» объектов численно выражают их предпочтительность, оптимальность, значимость и т.п.). Цель парных сравнений – определение приоритетов узлов кластера. Для того, чтобы уточнить, в каком смысле название вершины кластера является критерием для проведения сравнений используется формулировка критерия для парных сравнений. Для проведения парных сравнений задаются параметры: шкала сравнений и способ сравнений. При проведении парного сравнения объектов и достаточно установить только один из результатов (оценка отношения «веса» объекта и весу объекта ) или , так как .
2.3) Шкала сравнений – упорядоченный набор градаций (терминов, чисел и т.п.) для выражения результатов парных сравнений. Шкала сравнений позволяет выражать оценки отношений значений приоритетов узлов, поэтому ее деления – безразмерные величины. Шкалы, использующиеся в методе анализа иерархий, являются шкалами отношений. Т.е. если результату сравнения пары объектов ставится в соответствие значение на шкале, то число — оценка отношения «весов» объектов («веса» объектов численно выражают их предпочтительность, оптимальность, значимость и т.п.)
Шкала является количественной, если результаты парных сравнений выражаются непосредственно с помощью чисел. Шкала является качественной, если результаты парных сравнений выражаются с помощью с градаций-предпочтений. Градациям качественных шкал, использующихся в методе анализа иерархий, соответствуют числа.Т.е. качественные шкалы предоставляют возможность опосредованного оценивания приоритетов через предпочтения.
Дискретная шкала имеет конечных набор градаций (при переходе от одной градации к другой значение парного сравнения изменяется скачком). Дискретной шкале соответствует конечный набор чисел. Дискретные шкалы отличаются по величине наибольшего значения (при количественных сравнениях) или по количеству основных градаций (при качественных сравнениях).
Если число — верхний предел шкалы, то — нижний предел шкалы, т.е. все результаты парных сравнений, выраженные в такой шкале, лежат в пределах от до . Если результату сравнения пары объектов соответствует единица, то значения «весов» объектов оцениваются как равные. Кроме того, для дискретной шкалы — количество градаций для выражения превосходства одного из сравниваемых объектов над другим. При этом дискретная шкала имеет градации . В качестве градаций непрерывной шкалы может использоваться любое из действительных чисел от до .
Непрерывная шкала имеет непрерывный набор градаций (между основными делениями шкалы есть всевозможные промежуточные). Градациям непрерывной шкалы соответствуют числа на отрезке числовой прямой. Непрерывные шкалы отличаются по величине наибольшего значения (при количественных сравнениях) или по количеству основных градаций (при качественных сравнениях). Если «вес» объекта оценивается как превышающий «вес» объекта , результату парного сравнения объектов и соответствует значение на шкале, большее единицы. В противном случае лежит на шкале слева от единицы. В соответствии с этим правилом осуществляется и перевод градаций качественных шкал в числовые значения.
2.4) Способ сравнений определяется набором парных сравнений, необходимых для определения приоритетов узлов кластера. При сравнениях с эталоном (по Стивенсу) выбирается один из узлов кластера, с которым сравниваются все остальные. При проведении классических сравнений (по Саати) каждый узел кластера сравнивается со всеми остальными узлами кластера.
2.5) Сравнения кластеров — процедура оценки важности (приоритетности, силы подчинения) кластеров, имеющих общую вершину.Кластеры сравниваются друг с другом по критерию, заданному названием их вершины. Для проведения сравнений используется та же методика, что и для сравнений узлов в кластере. Фактически при сравнении кластеров, подчиненных одному узлу, производится рейтингование уровней по критерию, определяемому этим узлом.
2.6) Матрица сравнений – таблица числовых значений парных сравнений (для узлов кластера или для кластеров, имеющих общую вершину).
2.7) Индекс согласованности – количественная оценка противоречивости результатов сравнений (для системы в целом, для узлов одного кластера или для кластеров, имеющих общую вершину). Следует иметь в виду, что между достоверностью и непротиворечивостью сравнений нет явной связи. Противоречия в сравнениях возникают из-за субъективных ошибок экспертов. Индекс согласованности не зависит от шкал сравнений, но зависит от количества парных сравнений. Индекс согласованности – положительное число. Чем меньше противоречий в сравнениях, тем меньше значение индекса согласованности. При использовании способа сравнений с эталоном значение индекса согласованности равно нулю.
2.8) Достоверность результата сравнения – количественной оценка, характеризующая степень неточности (размытости) результата сравнения, связанная с компетентностью эксперта, уровнем доверия к данным и т.п. Достоверность сравнения выражается долей единицы (или в процентах). Нулю соответствуют абсолютно недостоверные сравнения, единице (или 100%) – абсолютно достоверные сравнения. На основе значений достоверности сравнений для кластеров, имеющих общую вершину, и значений достоверности парных сравнений в кластерах определяется достоверность данных в масштабах всей системы.
2.9) Относительная согласованность матрицы сравнений– отношение индекса согласованности к среднестатистическому значению индекса согласованности при случайном выборе коэффициентов матрицы сравнений. Относительная согласованность для системы в целом характеризует взвешенное среднее значение относительной согласованности по всем матрицам сравнений. Данные можно считать практически непротиворечивыми (достаточно согласованными), если значение относительной согласованности меньше чем 0,1. Это заключение справедливо как для данных кластера, так и для данных в масштабе всей системы.
2.10) Идеальные сравнения – наиболее близкие к имеющимся непротиворечивые результаты сравнений. Идеальным сравнениям соответствуют нулевой индекс согласованности и, соответственно, нулевое значение относительной согласованности. Знание идеальных сравнений используется при проведении процедуры согласования для кластеров, позволяющей скорректировать сравнения для уменьшения их противоречивости.
2.11) Наиболее противоречивые сравнения – это результаты нескольких парных сравнений узлов одного кластера или кластеров, имеющих общую вершину, вносящие наибольший вклад в значение относительной согласованности.
3. Результаты
3.1) Итоговый вектор приоритетов – рейтинг альтернатив. Каждой альтернативе (каждому возможному решению) ставится в соответствие положительное число – приоритет. Приоритет количественно выражает важность (предпочтительность, вероятность, оптимальность и т.п.) альтернативы в соответствии с главным критерием. Сумма приоритетов всех альтернатив равна единице. Вследствие этого часто допустимо отождествление приоритетов с вероятностями. Для поддержки принятия решения в основном с помощью итогового вектора приоритетов производится интерпретация результатов применения метода. Например, принимается решение с наибольшим приоритетом, отвергается решение с наименьшим приоритетом и т.п.
3.2) Вектор приоритетов уровня - рейтинг узлов данного уровня. Вектор приоритетов уровня вычисляется в предположении, что узлы данного уровня являются альтернативами. Все уровни, кроме тех, что содержат альтернативы и главный критерий рейтингования альтернатив, состоят из факторов, влияющих на итоговый вектор приоритетов. Таким образом, приоритеты узлов-факторов количественно характеризуют важность учета каждого фактора относительно других факторов того же уровня. При вычислении вектора приоритетов уровня рассматриваются только такие пути, образованные связями, которые ведут от вершины к узлам данного уровня. Приоритет узла в системе – это соответствующая компонента вектора приоритетов уровня, которому принадлежит данный узел.
3.3) Вектор приоритетов кластера – рейтинг узлов кластера. Вектор приоритетов узлов кластера может задаваться напрямую (без проведения сравнений) или рассчитываться на основе матрицы сравнений.
3.4) Показатели согласованности и достоверности для системы в целом, характеризующие качество данных, использованных для вычисления векторов приоритетов, также являются результатами. Величины этих показателей позволяют оценить степень доверия к результатам, полученным с помощью метода анализа иерархий. Знание показателей согласованности позволяет решать промежуточную задачу выявления участков проблемы, по которым имеется наиболее противоречивая информация. Решение такой задачи позволяет сделать сбор и корректировку данных более целенаправленными.
3.5) Устойчивость вектора приоритетов – качественная характеристика чувствительности значений приоритетов к малым изменениям данных или структуры модели. Очевидно, данные, использующиеся для принятия решений, всегда более или менее неточны. Поэтому чем меньше чувствительность значений приоритетов, тем больше обоснованность использования этих приоритетов для поддержки принятия решения. В зависимости от решаемой задачи определяется понятие «существенное изменение рейтинга» (смена лидера, смена аутсайдера и т.п.). Если при малых изменениях данных или структуры рейтинг изменяется несущественно, то он считается устойчивым.
3.6) Существенные элементы структуры – это узлы или связи между узлами, удаление которых приводит к существенному изменению рейтинга. Очевидно, заранее бывает чрезвычайно сложно определить, какие факторы являются определяющими для принятия решения, а какими можно пренебречь. Часто при принятии решений происходит упрощение ситуации (отбрасывание ряда факторов) или делается попытка учесть максимально возможное количество факторов. Поэтому поиск существенных факторов является важной самостоятельной задачей в процессе подготовки принятия решения.
3.7) Приоритет узла в модели – соответствующая компонента вектора приоритетов уровня, которому принадлежит данный узел. Допустим, в решаемой задаче близость приоритета к единице (к нулю) ассоциируется с предпочтительностью оптимальностью и т.п. Тогда, как правило, узлы с малыми (с большими) приоритетами оказываются несущественными.
3.8) Приоритет кластера в модели. Если некоторый узел является вершиной только одного кластера, то приоритет кластера в модели совпадает с приоритетом его вершины. (В модели, структура которой является строгой иерархией, так определяется приоритет для каждого кластера.) Если некоторый узел является вершиной нескольких кластеров, то для них устанавливаются приоритеты относительно общей вершины. Приоритет каждого из таких кластеров определяется как произведение приоритета относительно вершины на приоритет узла-вершины в модели.
Источники по процедуре применения Метода анализа иерархий
- Саати Т.Л. Принятие решений. Метод анализа иерархий. – М.: Радио и связь, 1993.
- Саати Т.Л. Принятие решений при зависимостях и обратных свя-зях: аналитические сети. – М.: Либроком, 2009.
- Гудков П.А. Методы сравнительного анализа. Учеб. пособие. – Пенза: Изд-во Пенз. гос. ун-та, 2008.
- Романов В.Н. Системный анализ для инженеров. – СПб.: СЗГЗТУ, 2006.
https://bit.ly/3TF1ccm
Комментариев нет:
Отправить комментарий